Semidefinite programming relaxation of a class of energy management models

ABSTRACT

According to an aspect of the invention, there is provided a method for optimizing a cost of electric power generation in a smart site energy management model, including determining a matrix X that minimizes a semidefinite program C·X−μ ln(det(X)) subject to constraints A BL (X)=b BL , A EG (X)=b EG , A IF (X)=b IF , X 0, for positive real values of μ as μ approaches zero, wherein C·X is a cost function that models a smart building-grid energy, where C is a parameter matrix, X is a decision variable matrix, A BL (X), A EG (X), and A IF (X) are sparse constraint matrices, b BL , b EG , and b IF  are constants derived from the constraints, and exploiting the sparsity of matrices A BL (X), A EG (X), and A IF (X) in determining a search direction for determining the vector X.

CROSS REFERENCE TO RELATED UNITED STATES APPLICATIONS

This application claims priority from “Semidefinite Programming (SDP) Relaxation of a Class of Energy Management Models”, U.S. Provisional Application No. 61/753,045 of Alexis Legbedji Motto, et al., filed Jan. 16, 2013, the contents of which are herein incorporated by reference in their entirety.

TECHNICAL FIELD

This disclosure is directed to methods for the solution to a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach.

DISCUSSION OF THE RELATED ART

A smart building-grid energy system is roughly defined as an interconnection of buildings and electric power grid energy resources within a clearly defined boundary, herein below called a smart site. A smart site is a strategic or self-interested entity that seeks to maximize some utility function subject to all applicable technical and budget constraints. The utility function is a measure of energy efficiency. A smart site may purchase energy from or sell energy to its external environment. On one hand, traditional building energy management systems have focused on meeting the energy requirements of one or more buildings assuming that the buildings are connected to a strong or infinite-capacity utility grid. On the other hand, electric grid management systems have traditionally modeled relatively large sites as single grid nodes with simple lump load models.

Modeling and solving the coordinated self-interested building and electric grid management models can help improve energy efficiency and security. From a practical perspective, global solutions to a general class of mathematical optimizations are of interest. Such optimization problems usually feature nonlinear constraints and many local minima. In most current works, local solutions are obtained using heuristic procedures.

From algorithmic perspective, the field of semidefinite programming (SDP) has received much interest in mathematical optimization in the last decade. SDP has applications in such diverse fields as traditional convex constrained optimization, control theory, and combinatorial optimization. Because SDPs are solvable via interior-point methods, and usually require about the same amount of computational resources as linear optimization, most applications can usually be efficiently solved in practice as well as in theory. There is interest in obtaining tight SDP relaxations of the building-grid energy management optimization and possibly exploiting the sparsity structure of the system.

SUMMARY

Exemplary embodiments of the invention as described herein generally include systems and methods for solving a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach. A mathematical optimization model according to an embodiment of the disclosure is nonlinear, nonconvex and potentially large-scale. A model according to an embodiment of the disclosure does not assume an infinite-capacity grid, but rather includes the grid security constraints. An approach according to an embodiment of the invention includes formulating an energy management model using a polynomial approximation, adding valid linear matrix inequalities (LMIs) if necessary, deriving a convex relaxation of the management model to obtain lower bounds, and solving the ensuing model using a primal-dual interior-point method for semidefinite programming, possibly exploiting the sparsity of the model.

According to an aspect of the invention, there is provided a method for optimizing a cost of electric power generation in a smart site energy management model, including determining a matrix X that minimizes a semidefinite program C·X−μ ln(det(X)) subject to constraints

A ^(BL)(X)=b ^(BL),

A ^(EG)(X)=b ^(EG),

A ^(IF)(X)=b ^(IF),

X

0,

for positive real values of μ as μ approaches zero, wherein C·X is a cost function that models a smart building-grid energy system of a plurality of buildings on a site interconnected with electric power grid energy resources wherein C is a matrix formed of parameters of components of a building model and an electric grid model, X is a matrix formed of decision variables of the building model and electric grid model, A^(BL)(X), A^(EG)(X), and A^(IF)(X) are sparse matrices that represent constraints due to a building (BL) model, an electric grid (EG) model, and an building-grid interface model (IF), respectively, in a semi-definite programming format, b^(BL), b^(EG), and b^(IF) are constants derived from the constraints of the building model and electric grid model, and exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) in determining a search direction for determining the vector X.

According to a further aspect of the invention, solving the primal semi-definite program includes imposing optimality conditions on the primal semi-definite program to derive

C−Z−Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0,

A ^(BL)(X)−b ^(BL)=0,

A ^(EG)(X)−b ^(EG)=0,

A ^(IF)(X)−b ^(IF)=0,

XZ−μI=0

wherein Z=μX⁻¹, X

0, and Ã^(BL)(y^(BL)), Ã^(EG)(y^(EG)) and Ã^(IF)(y^(IF)) are transposes of A^(BL)(y^(BL)), A^(EG)(y^(EG)), and A^(IF)(y^(IF)) wherein y^(BL), y^(EQ), and y^(IF) are variables in a dual program of the primal semi-definite program, and choosing a search direction (ΔX, Δy, ΔZ) by solving

${{\overset{\sim}{A}\Delta \; y} = {- \overset{\sim}{r}}},{{\Delta \; Z} = {{- R_{C}} - {\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} - {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} - {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}}}},{{\Delta \; X} = {\left( {K - {W\; \Delta \; Z}} \right)W}},$

wherein

$W = {{X^{\frac{1}{2}}\left( {X^{\frac{1}{2}}{ZX}^{\frac{1}{2}}} \right)}^{- \frac{1}{2}}X^{\frac{1}{2}}}$

is a positive semidefinite symmetric matrix of order n, and

$K = {{\frac{\beta}{n}\left( {X \cdot Z} \right)I} - {XZ}}$

is an n×n real matrix that are determined by a current point (X, y, Z) for some β^(ε)(0,1), wherein

${\overset{\sim}{A} = \begin{bmatrix} {\overset{\sim}{A}}^{BB} & {\overset{\sim}{A}}^{BE} & {\overset{\sim}{A}}^{BI} \\ \left( {\overset{\sim}{A}}^{BE} \right)^{T} & {\overset{\sim}{A}}^{EE} & {\overset{\sim}{A}}^{EI} \\ \left( {\overset{\sim}{A}}^{BI} \right)^{T} & \left( {\overset{\sim}{A}}^{EI} \right)^{T} & {\overset{\sim}{A}}^{II} \end{bmatrix}},{{\overset{\sim}{r}}_{b} = {\begin{bmatrix} {\overset{\sim}{r}}_{b}^{BL} \\ {\overset{\sim}{r}}_{b}^{EG} \\ {\overset{\sim}{r}}_{b}^{IF} \end{bmatrix}.}},{{\overset{\sim}{A}}_{ij}^{BB} = {{WA}_{i}^{BL}{W \cdot A_{j}^{BL}}}},{\forall i},{j \in \mathcal{M}^{BL}},{{\overset{\sim}{A}}_{ij}^{BE} = {{WA}_{i}^{BL}{W \cdot A_{j}^{EG}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{ij}^{BI} = {{WA}_{i}^{BL}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{EE} = {{WA}_{i}^{EG}{W \cdot A_{j}^{EG}}}},{\forall i},{j \in \mathcal{M}^{EG}},{{\overset{\sim}{A}}_{ij}^{EI} = {{WA}_{i}^{EG}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{II} = {{WA}_{i}^{IF}{W \cdot A_{j}^{IF}}}},{\forall i},{j \in \mathcal{M}^{IF}},{{\overset{\sim}{r}}_{b_{i}}^{BL} = {r_{b_{i}}^{BL} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{BL}}}}},{\forall{i \in \mathcal{M}^{BL}}},{{\overset{\sim}{r}}_{b_{i}}^{EG} = {r_{b_{i}}^{EG} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{EG}}}}},{\forall{i \in \mathcal{M}^{EG}}},{{\overset{\sim}{r}}_{b_{i}}^{IF} = {r_{b_{i}}^{IF} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{IF}}}}},{\forall{i \in {\mathcal{M}^{IF}.}}}$

and M^(BL), M^(EG), and M^(IF) denote index sets of building, electric-grid and building-grid interface constraints, respectively.

According to a further aspect of the invention, the method includes initializing a solution (X, y, Z) to an initial point (X⁰, y⁰, Z⁰) wherein X⁰

0,Z⁰

0, choosing a primal step length α_(p) and a dual step length α_(d) that satisfy X+α_(p)ΔX

0 and Z+α_(d)ΔZ

0, updating X←X+α_(p)ΔX and (y, Z)←α_(d)(Δy, ΔZ), and repeating the steps of choosing a search direction, choosing a primal step length and a dual step length, and updating a current iterate (X, y, Z) until the current iterate satisfies a stopping condition.

According to a further aspect of the invention, the method includes enforcing linear independence constraint qualifications of the matrices A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF).

According to a further aspect of the invention, exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) includes counting a number η_(i) ^(BL), η_(i) ^(EG), η_(i) ^(IF) of nonzero elements in A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), sorting the index sets M^(BL), M^(EG), M^(IF) in descending order in the numbers {η_(i) ^(BL)}, {η_(i) ^(EG)}, and {η_(i) ^(IF)} of nonzero elements in, respectively, A_(i) ^(BL), for all iεM^(BL), A_(i) ^(BG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), computing CPU times d_(1i) ^(BL)(î), d_(2i) ^(BL)(î), and d_(3i) ^(BL)(î) needed to compute Ã_(ξ(iK(j)) ^(BB) for all i,jεM^(BL), j≧i, wherein Ã_(ij) ^(BB)=WA_(i) ^(BL)W·A_(j) ^(BL), ∀i,jεM^(BL), and ξrepresents a permutation of the indices of the union of M^(BL), M^(EG), M^(IF), computing CPU times d_(1i) ^(EG)(î), d_(2i) ^(EG)(î), and d_(3i) ^(EG)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(EE), for all i,jεM^(EG), j≧i, wherein Ã_(ij) ^(EE)=WA_(i) ^(EG)W·A_(j) ^(EG), ∀i,jεM^(EG), computing CPU times d_(1i) ^(IF)(î, d_(2i) ^(IF)(î), and d_(3i) ^(IGF)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(II), for all i,jεM^(IF), j≧i, wherein Ã_(ij) ^(II)=WA_(i) ^(IF)W·A_(j) ^(IF), ∀i,jεM^(IF), and determining indices q₁ ^(BL), q₂ ^(BL)εM^(BL),q₁ ^(BL)≦q₂ ^(BL), q₁ ^(EG), q₂ ^(EG)εM^(EG), q₁ ^(EG)≦q₂ ^(EG), and q₁ ^(IF), q₁ ^(IF)εM^(IF), q₁ ^(IF)≦q₂ ^(IF) from conditions

d _(1i) ^(BL)(ξ)≦d _(2i) ^(BL)(ξ),d _(1i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if 0<i≦q ₁ ^(BL),

d _(2i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(2i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if q ₁ ^(BL) <i≦q ₂ ^(BL),

d _(3i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(3i) ^(BL)(ξ)<d _(2i) ^(BL)(ξ) if q ₂ ^(BL) <i≦|M ^(BL)|,

d _(1i) ^(EG)(ξ)≦d _(2i) ^(EG)(ξ),d _(1i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if 0<i≦q ₁ ^(EG),

d _(2i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(2i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if q ₁ ^(EG) <i≦q ₂ ^(EG),

d _(3i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(3i) ^(EG)(ξ)<d _(2i) ^(EG)(ξ) if q ₂ ^(EG) <i≦|M ^(EG)|,

d _(1i) ^(IF)(ξ)≦d _(2i) ^(IF)(ξ),d _(1i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if 0<i≦q ₁ ^(IF),

d _(2i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(2i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if q ₁ ^(IF) <i≦q ₂ ^(IF),

d _(3i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(3i) ^(IF)(ξ)<d _(2i) ^(IF)(ξ) if q ₂ ^(IF) <i≦|M ^(IF)|,

According to a further aspect of the invention, ξ minimizes

${d_{*}(\xi)} = {{\sum\limits_{i \in \mathcal{M}^{BL}}\; {d_{*i}^{BL}(\xi)}} + {\sum\limits_{j \in \mathcal{M}^{EG}}\; {d_{*j}^{BL}(\xi)}} + {\sum\limits_{ \in \mathcal{M}^{IF}}\; {{d_{*}^{BL}(\xi)}.}}}$

for a permutation of a union of the index sets M^(BL), M^(EG), and M^(IF).

According to a further aspect of the invention, if 0<i≦q₁ ^(BL), the method further comprises computing

Ã _(ξ(i)ξ(j)) ^(BB) =G ^(BL) ·A _(ξ(j)) ^(BL) ,∀i,jεM ^(BL) ,j≧i,

Ã _(ξ(i)ξ(j)) ^(BE) =G ^(BL) ·A _(ξv(j)) ^(EG) ,∀iεM ^(BL) ,∀jεM ^(EG),

Ã _(ξ(i)ξ(j)) ^(BI) =G ^(VL) ·A _(ξ(j)) ^(IF) ,∀iεM ^(BL) ,∀jεM ^(IF),

and if 0<i≦q₁ ^(IF), the method further comprises computing comprises computing

Ã _(ξ(i)ξ(j)) ^(II) =G ^(IF) ·A _(ξ(j)) ^(IF) ,∀iεM ^(EG) ,∀jεM ^(IF),

According to a further aspect of the invention, if q₁ ^(BL)<i≦q₁ ^(BL), the method further comprises computing

${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},$

if q₁ ^(EG)<i≦q₁ ^(EG), the method further comprises computing

${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},$

and if q₁ ^(IF)<i≦q₁ ^(IF), the method further comprises computing

${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{IF} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}$

According to a further aspect of the invention, if q₁ ^(BL)<i<M^(BL), the method further comprises computing

${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},$

if q₁ ^(EG)<i<M^(EG), the method further comprises computing

${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},$

and if q₁ ^(IF)<i<M^(IF), the method further comprises computing

${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{IF} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}$

According to another aspect of the invention, there is provided a method for optimizing a cost of electric power generation in a smart site energy management model, including choosing a search direction (ΔX, Δy, ΔZ) to minimize a semi-definite program given by

C−Z−Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0,

A ^(BL)(X)−b ^(BL)=0,

A ^(EG)(X)−b ^(EG)=0

A ^(IF)(X)−b ^(IF)=0

XZ−μI=0

wherein C is a matrix formed of parameters of components of a building model and an electric grid model, X is a matrix formed of decision variables of the building model and electric grid model, A^(BL)(X), A^(EG)(X), and A^(IF)(X) are sparse matrices that represent constraints due to a building (BL) model, an electric grid (EG) model, and an building-grid interface model (IF), respectively, in a semi-definite programming format, b^(BL), b^(EG), and b^(IF) are constants derived from the constraints of the building model and electric grid model, Z=μX⁻¹, X

0, and Ã^(BL)(y^(BL)), Ã^(EG)(y^(EG)) and Ã^(IF)(y^(IF)), are transposes of A^(BL)(y^(BL)), A^(EG)(y^(EG)), and A^(IF)(y^(IF)) wherein y^(BL), y^(EQ), and y^(IF) are variables in a dual program of the primal semi-definite program, by solving

${{\overset{\sim}{A}\Delta \; y} = {- \overset{\sim}{r}}},{{\Delta \; Z} = {{- R_{C}} - {\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} - {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} - {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}}}},{{\Delta \; X} = {\left( {K - {W\; \Delta \; Z}} \right)W}},$

wherein

$W = {{X^{\frac{1}{2}}\left( {X^{\frac{1}{2}}{ZX}^{\frac{1}{2}}} \right)}^{- \frac{1}{2}}X^{\frac{1}{2}}}$

is a positive semidefinite symmetric matrix of order n, and

$K = {{\frac{\beta}{n}\left( {X \cdot Z} \right)I} - {XZ}}$

is an n×n real matrix that are determined by a current point (X, y, Z) for some β^(ε) (0,1),

wherein

${\overset{\sim}{A} = \begin{bmatrix} {\overset{\sim}{A}}^{BB} & {\overset{\sim}{A}}^{BE} & {\overset{\sim}{A}}^{BI} \\ \left( {\overset{\sim}{A}}^{BE} \right)^{T} & {\overset{\sim}{A}}^{EE} & {\overset{\sim}{A}}^{EI} \\ \left( {\overset{\sim}{A}}^{BI} \right)^{T} & \left( {\overset{\sim}{A}}^{EI} \right)^{T} & {\overset{\sim}{A}}^{II} \end{bmatrix}},{{\overset{\sim}{r}}_{b} = {\begin{bmatrix} {\overset{\sim}{r}}_{b}^{BL} \\ {\overset{\sim}{r}}_{b}^{EG} \\ {\overset{\sim}{r}}_{b}^{IF} \end{bmatrix}.}},{{\overset{\sim}{A}}_{ij}^{BB} = {{WA}_{i}^{BL}{W \cdot A_{j}^{BL}}}},{\forall i},{j \in \mathcal{M}^{BL}},{{\overset{\sim}{A}}_{ij}^{BE} = {{WA}_{i}^{BL}{W \cdot A_{j}^{EG}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{ij}^{BI} = {{WA}_{i}^{BL}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{EE} = {{WA}_{i}^{EG}{W \cdot A_{j}^{EG}}}},{\forall i},{j \in \mathcal{M}^{EG}},{{\overset{\sim}{A}}_{ij}^{EI} = {{WA}_{i}^{EG}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{II} = {{WA}_{i}^{IF}{W \cdot A_{j}^{IF}}}},{\forall i},{j \in \mathcal{M}^{IF}},{{\overset{\sim}{r}}_{b}^{BL} = {r_{b}^{BL} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{BL}}}}},{\forall{i \in \mathcal{M}^{BL}}},{{\overset{\sim}{r}}_{b_{i}}^{EG} = {r_{b_{i}}^{EG} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{EG}}}}},{\forall{i \in \mathcal{M}^{EG}}},{{\overset{\sim}{r}}_{b_{i}}^{IF} = {r_{b_{i}}^{IF} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{IF}}}}},{\forall{i \in {\mathcal{M}^{IF}.}}}$

and M^(BL), M^(EG), and M^(IF) denote index sets of building, electric-grid and building-grid interface constraints, respectively, and exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) in determining said search direction.

According to a further aspect of the invention, the semi-definite program is derived by imposing optimality conditions on a primal semi-definite program C·X−μ ln(det(X)) subject to constraints

A ^(BL)(X)=b ^(BL),

A ^(EG)(X)=b ^(EG),

A ^(IF)(X)=b ^(IF),

X

0,

which is minimized for positive real values of μ as μ approaches zero.

According to another aspect of the invention, there is provided a non-transitory program storage device readable by a computer, tangibly embodying a program of instructions executed by the computer to perform the method steps for optimizing a cost of electric power generation in a smart site energy management model.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a typical Combined Cooling, Heating and Power (CCHP) system, according to an embodiment of the invention.

FIGS. 2( a)-(b) illustrates up-to-eighth-order Taylor series approximations of the cos (x) and sin (x), respectively, over the theoretical range xε[−π,π], according to an embodiment of the invention.

FIG. 3 is a flowchart of a primal-dual interior point method for a convex relaxation of a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach, according to an embodiment of the invention.

FIG. 4 is a flowchart of a method for a convex relaxation of a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach that exploits sparsity, according to an embodiment of the invention.

FIG. 5 is a block diagram of an exemplary computer system for implementing a method for a convex relaxation of a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach, according to an embodiment of the invention.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Exemplary embodiments of the invention as described herein generally include systems and methods for a convex relaxation of a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach. Accordingly, while the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that there is no intent to limit the invention to the particular forms disclosed, but on the contrary, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

NOTATION:

The notation used throughout the present disclosure is summarized in the NOMENCLATURE Appendix following this specification. The symbol V_(x)h denotes the gradient of the function h with respect to x; V_(x) ^(z)h denotes the Hessian of the function h with respect to x; x^(T) denote the transpose of x; tr(X) denotes the trace of X. The symbol P_(r)(x) is shorthand for a polynomial function of x, of degree at most r. Most matrices occurring herein below will be real symmetric matrices of order n: S^(n) denotes the space of such matrices. The notation x·y denotes the inner product of two equi-dimension vectors, defined by x^(T)y. The notation M₁·M₂ denotes the inner product between two such matrices, defined by tr(M₁M₂). The associated norm is the Frobenius norm, written ∥M∥_(F):=(trM^(T)M)^(1/2) or just ∥M∥, while ∥M∥₂ denotes the L₂-operator norm of a matrix. Norms on vectors will always be Euclidean unless otherwise noted.

The notation X

0 (X

0) means that X is positive semidefinite (positive definite). The matrices involved in these binary operations are always symmetric matrices. The notation S₊ ^(n)(S₊₊ ^(n)) denotes the set of positive semidefinite (positive definite) symmetric matrices of order n. The notation Z

Y or Y

X means that Y−Z

0. The notation X

Y or Y

X means that Y−X

0. If X

0, then write X^(1/2) for the square root of X.

The notation diag(X) denotes the vector of diagonal entries of X. X denotes the diagonal matrix with the vector x as its diagonal. This notation can be extended to general block diagonal matrices: if M₁, M₂, . . . , M_(k)εS^(n), then diag(M₁, . . . , M_(k)) denotes the block diagonal matrix with the M_(i)'s on its diagonal. Lower-case Roman letters denote vectors and uppercase letters denote matrices.

Additional symbols used here are dual variables, which will be mnemonically displayed on top of the corresponding equality or inequality symbols. If x is a variable, then x and x denote its lower limit and upper limit, respectively. Other symbols with a narrower scope are defined in the subsections where they are used. The symbol π_(ijk) ^(CH) denotes the i-th parameter of the j-th chiller (i.e. CH) at time step k, the symbol x_(ijk) ^(CH) denotes the i-th decision of the j-th chiller (i.e. CH) at time step k, and similarly for the other building-electric-grid resources; e.g. pump (PM); generator (GN), and node (ND). In particular, the letter k is a time index, and a parameter or variable subscripted by k means a measurement of the corresponding value at time k, and sums over k are sums over measurements of the corresponding subscripted term at times k.

Embodiments of the invention consider a small Combined Cooling, Heating and Power (CCHP) system that provides heating, cooling and electricity power to a single building or complex that has a group of several buildings. CCHP is a popular technology that integrates cooling, heating and power generation capabilities on one site. The keystone of CCHP is that waste heat from a prime mover, such as a gas turbine, can be utilized to meet a variety of thermal and power needs in the complex.

A schematic plot of an exemplary, non-limiting CCHP system is shown in FIG. 1. A gas turbine (GT) and generator (G) serve as the primary on-site source for electricity power. The waste heat in the exhaust gas from gas turbine is used to generate steam in heat recovery steam generator (HRSG) unit. Steam from the HRSG unit can either drive the absorption chiller (AC) to generate cooling, or drive a steam turbine (ST) to drive an additional electricity generator (G), or provide heating needs in the facility. Electric chillers (EC) and thermal energy storage (TES) tanks are also typical in such systems.

An electric grid (EG) can be modeled as a standard undirected graph G=(N, E), where N and E denote the sets of electric nodes and branches, respectively. A branch has two terminals: origin and destination terminals. Each terminal is connected to an electric node. Examples of electric branches are underground or overhead lines, on-load tap transformers, phase-shifting transformers, series reactors and series capacitors. In concept, generators, loads, and shunt devices, such as shunt capacitors and reactors, can be modeled as branch devices with one of their associated terminals connected to ground.

Optimization of a CCHP system is often performed on a steady state model, assuming that transients die out very fast. One exemplary, non-limiting model is a collection of reduced order models for components such as chillers, TES, HRSG, gas turbine for the purpose of optimization. According to an embodiment of the disclosure, a class of smart site energy management models, which are mathematical optimization models, may be defined by a minimization of an objective cost function given by EQ. (1), below, subject to the constraints of EQS. (2)-(11). A short description of the objective cost function and each of the constraints is given immediately following the last constraint; i.e. after EQS. (11). In the model equations below, the notation P_(k) refers to a k^(th)-order polynomial whose coefficients can be determined from a regression analysis. Note that these model equations are exemplary and non-limiting, and other embodiments of the invention can include other components models and other sets of constraints.

$\begin{matrix} {{\zeta = {\sum\limits_{k}\; \left\{ {{\sum\limits_{g}\; \left\lbrack {\rho_{gk}^{CG} \cdot {u_{dgk}^{CG}\left( x_{gk}^{CG} \right)}} \right\rbrack^{2}} + {\sum\limits_{c}\; \left\lbrack {\rho_{ck}^{CH} \cdot {u_{dck}^{CH}\left( x_{ck}^{CH} \right)}} \right\rbrack^{2}} + {\sum\limits_{m}\; \left\lbrack {\rho_{mk}^{CM} \cdot {u_{dmk}^{CM}\left( x_{mk}^{CM} \right)}} \right\rbrack^{2}} + {\sum\limits_{g}\; \left\lbrack {\rho_{gk}^{GN} \cdot {u_{dgk}^{GN}\left( x_{gk}^{GN} \right)}} \right\rbrack^{2}} + {\sum\limits_{gl}\; \left\lbrack {\rho_{gk}^{GT} \cdot {u_{dgk}^{GT}\left( x_{gk}^{GT} \right)}} \right\rbrack^{2}} + {\sum\limits_{h}\; \left\lbrack {\rho_{hk}^{HR} \cdot {u_{dhk}^{HR}\left( x_{hk}^{HR} \right)}} \right\rbrack^{2}} + {\sum\limits_{l}\; \left\lbrack {\rho_{lk}^{LD} \cdot {u_{dlk}^{LD}\left( x_{lk}^{LD} \right)}} \right\rbrack^{2}} + {\sum\limits_{n}\; \left\lbrack {\rho_{nk}^{ND} \cdot {u_{dnk}^{ND}\left( x_{nk}^{ND} \right)}} \right\rbrack^{2}} + {\sum\limits_{p}\; \left\lbrack {\rho_{pk}^{PM} \cdot {u_{dpk}^{PM}\left( x_{pk}^{PM} \right)}} \right\rbrack^{2}} + {\sum\limits_{s}\; \left\lbrack {\rho_{sk}^{ST} \cdot {u_{dsk}^{ST}\left( x_{sk}^{ST} \right)}} \right\rbrack^{2}} + {\sum\limits_{t}\; \left\lbrack {\rho_{tk}^{TE} \cdot {u_{dtk}^{TE}\left( x_{tk}^{TE} \right)}} \right\rbrack^{2}} + {\sum\limits_{t}\; \left\lbrack {\rho_{tk}^{TS} \cdot {u_{dtk}^{TS}\left( x_{tk}^{TS} \right)}} \right\rbrack^{2}}} \right\}}},} & (1) \\ {\mspace{79mu} {{x_{3\; {ck}}^{CH} = {x_{4\; {ck}}^{CH}{\pi_{3\; {wk}}^{WR}\left( {x_{1\; {gk}}^{CG} - x_{2\; {ck}}^{CH}} \right)}}},}} & \left( {2a} \right) \\ {\mspace{79mu} {{x_{1\; {ck}}^{CH} = {P_{1}\left( x_{3\; {ck}}^{CH} \right)}},}} & \left( {2\; b} \right) \\ {\mspace{79mu} {x_{7\; {tk}}^{TS} = {x_{2\; {gk}}^{CG} - x_{1\; {mk}}^{CM}}}} & \left( {3\; a} \right) \\ {{\pi_{1\; {wk}}^{WR}\pi_{3\; {wk}}^{WR}\frac{x_{1\; {tk}}^{TS}}{t}} = {{\pi_{3\; {tk}}^{TS}x_{7\; {tk}}^{TS}{\pi_{3\; {wk}}^{WR}\left( {x_{2\; {tk}}^{TS} - x_{1\; {tk}}^{TS}} \right)}} + {\pi_{7\; {tk}}^{TS}{\pi_{9\; {tk}}^{TS}\left( {x_{2\; {tk}}^{TS} - x_{1\; {tk}}^{TS}} \right)}}}} & \left( {3\; b} \right) \\ {{\pi_{1\; {wk}}^{WR}\pi_{3\; {wk}}^{WR}\frac{x_{2\; {tk}}^{TS}}{t}} = {{\pi_{8\; {tk}}^{TS}x_{7\; {tk}}^{TS}{\pi_{3\; {wk}}^{WR}\left( {x_{3\; {tk}}^{TS} - x_{2\; {tk}}^{TS}} \right)}} + {\pi_{7\; {tk}}^{TS}{\pi_{9\; {tk}}^{TS}\left( {x_{1\; {tk}}^{TS} - x_{2\; {tk}}^{TS}} \right)}}}} & \left( {3c} \right) \\ {\mspace{79mu} {x_{3\; {tk}}^{TS} = {x_{2\; {mk}}^{CM} - \pi_{1\; {gk}}^{CG}}}} & \left( {3d} \right) \\ {\mspace{79mu} {{{x_{7\; {tk}}^{TS}x_{4\; {tk}}^{TS}} + {x_{1\; {mk}}^{CM}x_{3\; {mk}}^{CM}}} = {x_{2\; {gk}}^{CG}x_{1\; {gk}}^{CG}}}} & \left( {3e} \right) \\ {\mspace{79mu} {x_{7\; {tk}}^{TS} = {x_{1\; {mk}}^{CM} - x_{2\; {gk}}^{CG}}}} & \left( {4a} \right) \\ {{\pi_{1\; {wk}}^{WR}\pi_{3\; {wk}}^{WR}\frac{x_{1\; {tk}}^{TS}}{t}} = {{\pi_{4\; {tk}}^{TS}x_{7\; {tk}}^{TS}{\pi_{3\; {wk}}^{WR}\left( {x_{6\; {tk}}^{TS} - x_{1\; {tk}}^{TS}} \right)}} + {\pi_{5\; {tk}}^{TS}{\pi_{9\; {tk}}^{TS}\left( {x_{2\; {tk}}^{TS} - x_{1\; {tk}}^{TS}} \right)}}}} & \left( {4b} \right) \\ {{\pi_{1\; {wk}}^{WR}\pi_{3\; {wk}}^{WR}\frac{x_{2\; {tk}}^{TS}}{t}} = {{\pi_{6\; {tk}}^{TS}x_{7\; {tk}}^{TS}{\pi_{3\; {wk}}^{WR}\left( {x_{1\; {tk}}^{TS} - x_{2\; {tk}}^{TS}} \right)}} + {\pi_{5\; {tk}}^{TS}{\pi_{9\; {tk}}^{TS}\left( {x_{1\; {tk}}^{TS} - x_{2\; {tk}}^{TS}} \right)}}}} & \left( {4c} \right) \\ {\mspace{79mu} {{{x_{7\; {tk}}^{TS}x_{5\; {tk}}^{TS}} + {x_{2\; {gk}}^{CG}x_{1\; {gk}}^{CG}}} = {x_{1\; {mk}}^{CM}x_{2\; {mk}}^{CM}}}} & \left( {4d} \right) \\ {\mspace{79mu} {x_{6\; {tk}}^{TS} = {x_{1\; {gk}}^{CG} = x_{3\; {mk}}^{CM}}}} & \left( {4e} \right) \\ {\mspace{79mu} {x_{7\; {tk}}^{TS} = {P_{1}\left( x_{3\; {gk}}^{GT} \right)}}} & \left( {5a} \right) \\ {\mspace{79mu} {x_{1\; {gk}}^{GT} = {P_{2}\left( x_{3\; {gk}}^{GT} \right)}}} & \left( {5b} \right) \\ {\mspace{79mu} {x_{2\; {gk}}^{GT} = {P_{4}\left( x_{3\; {gk}}^{GT} \right)}}} & \left( {5c} \right) \\ {\mspace{79mu} {x_{3\; {hk}}^{HR} = {P_{1}\left( x_{6\; {hk}}^{HR} \right)}}} & \left( {6a} \right) \\ {\mspace{79mu} {x_{2\; {wk}}^{WR} = {P_{1}\left( x_{6\; {hk}}^{HR} \right)}}} & \left( {6b} \right) \\ {\mspace{79mu} {x_{5\; {hk}}^{HR} = {\pi_{1\; {hk}}^{HR}x_{7\; {hk}}^{HR}}}} & \left( {6c} \right) \\ {\mspace{79mu} {{x_{2\; {gk}}^{GT} - x_{4\; {hk}}^{HR}} = {\pi_{2\; {hk}}^{HR}\left( {x_{2\; {gk}}^{GT} - x_{1\; {hk}}^{HR}} \right)}}} & \left( {6d} \right) \\ {\mspace{79mu} {{{\overset{\sim}{x}}_{3\; {gk}}^{HR}x_{8\; {hk}}^{HR}} = {x_{1\; {gk}}^{GT}\left( {x_{2\; {gk}}^{GT} - x_{4\; {hk}}^{HR}} \right)}}} & \left( {6e} \right) \\ {\mspace{79mu} {x_{2\; {hk}}^{HR} = \left\{ \begin{matrix} {0,} & {{\overset{\sim}{x}}_{3\; {gk}}^{HR} < {\overset{\sim}{x}}_{1\; {gk}}^{HR}} \\ {{x_{3\; {hk}}^{HR} + {\frac{1}{\pi_{1\; {gk}}^{GS}}\left( {{\overset{\sim}{x}}_{3\; {gk}}^{HR} - {\overset{\sim}{x}}_{2\; {gk}}^{HR}} \right)}},} & {{\overset{\sim}{x}}_{3\; {gk}}^{HR} \geq {\overset{\sim}{x}}_{2\; {gk}}^{HR}} \\ {x_{3\; {hk}}^{HR},} & {o.w.} \end{matrix} \right.}} & \left( {{6f},g,h} \right) \\ {\mspace{79mu} {{\overset{\sim}{x}}_{1\; {gk}}^{HR} = {\pi_{3\; {wk}}^{WR}\left( {x_{1\; {hk}}^{HR} - x_{3\; {hk}}^{HR}} \right)}}} & \left( {6i} \right) \\ {\mspace{79mu} {{\overset{\sim}{x}}_{2\; {gk}}^{HR} = {{\pi_{3\; {wk}}^{WR}\left( {x_{1\; {hk}}^{HR} - x_{3\; {hk}}^{HR}} \right)} + \pi_{2\; {wk}}^{WR}}}} & \left( {6j} \right) \\ {\mspace{79mu} {x_{2\; {sk}}^{ST} = {x_{3\; {sk}}^{ST}x_{8\; {hk}}^{HR}}}} & \left( {7a} \right) \\ {\mspace{79mu} {x_{4\; {mk}}^{CM} = {\left( {1 - x_{3\; {sk}}^{ST}} \right)x_{8\; {hk}}^{HR}}}} & \left( {7b} \right) \\ {\mspace{79mu} {{\pi_{1\; {wk}}^{WR}x_{11\; k}^{PM}} = {x_{2\; {sk}}^{ST}\left( {\pi_{1\; {dk}}^{DA} - \pi_{1\; {ck}}^{CD}} \right)}}} & \left( {7c} \right) \\ {\mspace{79mu} {x_{12\; k}^{PM} = {\frac{x_{8\; {hk}}^{HR}}{\pi_{1\; {wk}}^{WR}}\left( {x_{7\; {hk}}^{HR} - \pi_{1\; {dk}}^{DA}} \right)}}} & \left( {7d} \right) \\ {\mspace{79mu} {x_{1\; {sk}}^{ST} = {x_{2\; {sk}}^{ST}\pi_{1\; {gk}}^{GS}\pi_{sk}^{ST}{x_{2\; {hk}}^{HR}\left( {1 - \left( {\pi_{1\; {ck}}^{CD}/x_{5\; {hk}}^{HR}} \right)^{\frac{1}{4}}} \right)}}}} & \left( {7e} \right) \\ {x_{1\; {tk}}^{TE} = {{\pi_{1\; {tk}}^{TE}x_{1\; {n{(t)}}k}^{ND}x_{1\; {n{(t)}}k}^{ND}} + {x_{1\; {n{(t)}}k}^{ND}x_{1\; {n{(\overset{\sim}{t})}}k}^{ND}\left\{ {{\pi_{2\; {tk}}^{TE}{\cos \left( {x_{1\; {n{(t)}}k}^{ND} - x_{1\; {n{(\overset{\sim}{t})}}k}^{ND}} \right)}} + {\pi_{4\; {tk}}^{TE}{\sin \left( {x_{1\; {n{(t)}}k}^{ND} - x_{1\; {n{(\overset{\sim}{t})}}k}^{ND}} \right)}}} \right\}}}} & \left( {8a} \right) \\ {x_{2\; {tk}}^{TE} = {{{- \pi_{3\; {tk}}^{TE}}x_{1\; {n{(t)}}k}^{ND}x_{1\; {n{(t)}}k}^{ND}} + {x_{1\; {n{(t)}}k}^{ND}x_{1\; {n{(\overset{\sim}{t})}}k}^{ND}\left\{ {{\pi_{2\; {tk}}^{TE}{\sin \left( {x_{1\; {n{(t)}}k}^{ND} - x_{1\; {n{(\overset{\sim}{t})}}k}^{ND}} \right)}} - {\pi_{4\; {tk}}^{TE}{\cos \left( {x_{1\; {n{(t)}}k}^{ND} - x_{1\; {n{(\overset{\sim}{t})}}k}^{ND}} \right)}}} \right\}}}} & \left( {8b} \right) \\ {\mspace{79mu} {{\left( x_{1\; {tk}}^{TE} \right)^{2} + \left( x_{2\; {tk}}^{TE} \right)^{2}} \leq \pi_{1\; {tk}}^{TE}}} & \left( {8c} \right) \\ {\mspace{79mu} {{{\sum\limits_{\{{{g|{n{(g)}}} = n}\}}\; x_{1\; {gk}}^{GN}} - {\sum\limits_{\{{{|{n{()}}} = }\}}\; x_{1\; \; k}^{LD}} - {\sum\limits_{{t|{n{(t)}}} = n}\; x_{1\; {tk}}^{TE}}} = 0}} & \left( {9a} \right) \\ {\mspace{79mu} {{{\sum\limits_{\{{{g|{n{(g)}}} = n}\}}\; x_{2\; {gk}}^{GN}} - {\sum\limits_{\{{{|{n{()}}} = }\}}\; x_{2\; \; k}^{LD}} - {\sum\limits_{{t|{n{(t)}}} = n}\; x_{2\; {tk}}^{TE}}} = 0}} & \left( {9b} \right) \\ {\mspace{79mu} {{{\sum\limits_{c}\; x_{3\; {ck}}^{CH}} = {\sum\limits_{m}\; x_{3\; {mk}}^{CM}}},{\forall k}}} & \left( {10a} \right) \\ {{{{\sum\limits_{m}\; x_{5\; {mk}}^{CM}} + {\sum\limits_{g}\; \pi_{1\; {gk}}^{GT}} + {\sum\limits_{s}\; x_{1\; {sk}}^{ST}}} = {{\sum\limits_{m}\; \pi_{2\; {mk}}^{CM}} + {\sum\limits_{p}\; x_{1\; {pk}}^{PM}} + {\sum\limits_{c}\; x_{1\; {ck}}^{CH}}}},{\forall k}} & \left( {10b} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{igk}^{CG} \leq x_{igk}^{CG} \leq {\overset{\_}{x}}_{igk}^{CG}},{\forall i},{\forall g},{\forall k}}} & \left( {11a} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{ick}^{CH} \leq x_{ick}^{CH} \leq {\overset{\_}{x}}_{ick}^{CH}},{\forall i},{\forall c},{\forall k}}} & \left( {11b} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{imk}^{CM} \leq x_{imk}^{CM} \leq {\overset{\_}{x}}_{imk}^{CM}},{\forall i},{\forall m},{\forall k}}} & \left( {11c} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{igk}^{GN} \leq x_{igk}^{GN} \leq {\overset{\_}{x}}_{igk}^{GN}},{\forall i},{\forall g},{\forall k}}} & \left( {11d} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{igk}^{GT} \leq x_{igk}^{GT} \leq {\overset{\_}{x}}_{igk}^{GT}},{\forall i},{\forall g},{\forall k}}} & \left( {11e} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{ihk}^{HR} \leq x_{ihk}^{HR} \leq {\overset{\_}{x}}_{ihk}^{HR}},{\forall i},{\forall h},{\forall k}}} & \left( {11f} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{ik}^{LD} \leq x_{ik}^{LD} \leq {\overset{\_}{x}}_{ik}^{LD}},{\forall i},{\forall },{\forall k}}} & \left( {11g} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{ink}^{ND} \leq x_{ink}^{ND} \leq {\overset{\_}{x}}_{ink}^{ND}},{\forall i},{\forall n},{\forall k},}} & \left( {11h} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{ipk}^{PM} \leq x_{ipk}^{PM} \leq {\overset{\_}{x}}_{ipk}^{PM}},{\forall i},{\forall p},{\forall k}}} & \left( {11i} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{isk}^{ST} \leq x_{isk}^{ST} \leq {\overset{\_}{x}}_{isk}^{ST}},{\forall i},{\forall s},{\forall k}}} & \left( {11j} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{itk}^{TE} \leq x_{itk}^{TE} \leq {\overset{\_}{x}}_{itk}^{TE}},{\forall i},{\forall t},{\forall k}}} & \left( {11k} \right) \\ {\mspace{79mu} {{{\underset{\_}{x}}_{itk}^{TS} \leq x_{itk}^{TS} \leq {\overset{\_}{x}}_{itk}^{TS}},{\forall i},{\forall t},{\forall k}}} & \left( {11l} \right) \end{matrix}$

EQ. (1) defines an objective cost function to be minimized, where the symbols u_(gck) ^(CG)(x_(gk) ^(CG)), . . . , u_(dtk) ^(TS)(x_(tk) ^(TS)) denote basis vectors of at most d-degree polynomials, in the multi-dimensional arguments x_(gk) ^(CG), . . . , t_(tk) ^(TS), as defined below, e.g. in EQS. (12). According to an embodiment of the disclosure, a generic objective function may be assumed, which may be cast as a piecewise linear function or a sum of squares (SOS) polynomial. A polynomial pε

_(2d)[x] is an SOS polynomial if there exists k polynomials, [{tilde over (p)}_(i)]_(i=1) ^(k)ε

[x], such that

${p(x)} = {\sum\limits_{i = 1}^{k}\; {{{\overset{\sim}{p}}_{i}(x)}^{2}.}}$

Let S_(2d)[x] denote the set of SOS polynomial in x of degree at most 2d. For example, p(x₁, x₂)=(x₁ ²−2x₂−1)²+(2x₁x₂+x₁−5)² is an SOS polynomial of degree 4, with k=2, {tilde over (p)}(x ₁,x₂)=x₁ ²−2x₂−1, and {tilde over (p)}₂(x₁,x₂)=2x₁x₂+x₁−5.

Note that a d-degree polynomial pε

_(d)[x] may be cast as p(x)=ρ^(T)u_(d)(x), where ρε

^(|u) ^(d) ^(|) is a vector of parameters, and u_(d)(x)ε

^(|u) ^(d) ^(|) is a basis vector of r-degree polynomials. The dimension of ρ and u(x) is given by

${u_{d}} = {\begin{pmatrix} {{x} + d} \\ d \end{pmatrix}.}$

(i.e. the number of combinations of d in |x|+d). The vector u_(d)(x) may be expanded, in terms of the basis elements, as u_(d)(x)=vec{1, x₁, x₂, . . . , _(x)n, x₁ ², x₁x₂, x₁x₃, . . . , x_(n) ², _ _ _, x₁ ^(r), . . . , x_(n) ^(r)}. For example, if x^(ε)

² and p^(ε)P₂[x], one may have u₂(x₁, x₂, x₃)=vec{1, x₁, x₂, x₃, x₁ ², x₁x₂, x₁x₃, x₂ ², x₂x₃, x₃ ²}.

Using the aforementioned notation, a set of 2d-degree SOS polynomials according to an embodiment of the invention can be formally written as follows:

S 2   d  [ x ] = { ∑ j = 1 k   ( ρ j T  u d  ( x ) ) 2 : k ≥ 1 , ρ j ∈ (  x  + d d ) } ( 12 )

A smart site optimization model objective function according top an embodiment of the disclosure includes decomposable terms of subsets of building and/or electric grid model variables. In practice, only a small subset of variables typically appear in an objective function. Hence, the objective function parameters (i.e. ρ_(j)'s) are highly sparse. For example, the objective function to minimize the cost of electricity purchased from the external electric grid together with the cost of fuel used to power the gas turbine would be a linear function:

$\begin{matrix} {\zeta = {\sum\limits_{k}\; {\left\{ {{\sum\limits_{m}\; {\rho_{mk}^{CM}x_{mk}^{CM}}} + {\sum\limits_{g}\; {\rho_{gk}^{GT}x_{gk}^{GT}}}} \right\}.}}} & (13) \end{matrix}$

In other energy management applications, the cost of generation may be expressed as a quadratic function in the power produced by the generators. It is well-known that any polynomial of degree 2 in xε

^(|x|), |x|≧1 can be cast as a sum of squares polynomials. In this case, the objective function may be a quadratic:

$\begin{matrix} {\zeta = {\sum\limits_{k}\; {\sum\limits_{m}\; \left\lbrack {\rho_{gk}^{GN} \cdot {u_{dgk}^{GN}\left( x_{gk}^{GN} \right)}} \right\rbrack^{2}}}} & (14) \end{matrix}$

The constraints of EQ. (8a) define the real part of a power flow at terminal t at time k. The constraints of EQ. (8b) define the imaginary part of the power flow at terminal t at time k. The constraints of EQ. (8c) enforces the thermal rating at terminal t at time k. These constraints contain nonlinear terms involving the sine and cosine functions. According to an embodiment of the invention, these functions may be replaced by polynomial approximations using Taylor series expansions. FIGS. 2( a)-(b) shows the quality of this approximation over the practical angle range of xε[−π,π], the eighth order of which is highly-accurate for most realistic grid operation and planning modeling purposes. In practice, the node angle differences are sufficiently restricted such that lower order polynomial approximations may be appropriate, thereby decreasing the size of an optimization model according to an embodiment of the invention.

The constraints of EQS. (2a)-(2b) represent the Chiller (CH) Model: These equations describe a typical model according to an embodiment of the invention for chillers in a variable primary flow system. Under certain simplifying assumptions, the amount of cooling produced by a chiller is determined from chilled water mass flow rate through the chiller, expressed in EQ. (2a). The corresponding electricity consumption is determined by EQ. (2b).

The constraints of EQS. (3a)-(4e) represent the Thermal Storage (TS) Model: The following constraints describe a stratified, two-layered model according to an embodiment of the invention for thermal energy storage tank. EQS. (3) model the charging mode requirements. EQS. (4) enforce the discharge mode requirements. The thermodynamics of the two layers are described by a pair of ordinary differential equations; energy and mass conservation at mixing valves are included as equality constraints.

The constraints of EQS. (5a)-(5c) represent the Gas Turbine (GT) Model: EQS. (5) are data-driven models according to embodiments of the invention for selected input and outputs of the gas turbine, obtained through regression analysis. The input variable is the desired electrical power produced by the gas turbine. The output variables of interest are the corresponding values of natural gas mass flow rate, exhaust gas mass flow rate and turbine exit temperature.

The constraints of EQS. (6a)-(6j) represent the Heat Recovery Steam Generator (HR): The HRSG includes multiple components such as super-heater, economizer, boilers, etc. For simplicity of exposition, embodiments of the invention can model the HRSG as a lumped, counter-flow heat exchanger.

The constraints of EQS. (7a)-(7e) represent the Steam Loop: The steam loop may be defined as the section of the CCHP system associated with the co-generated steam used to meet heating demands and drive steam turbines for power production. A simplified model according to an embodiment of the invention for the steam loop is given by EQS. (7), where x_(8hk) ^(HR) denotes the mass flow rate (kg/s) of steam used to drive steam turbine, and x_(1sk) ^(ST) denotes the electrical power produced (MW) by steam turbine.

The constraints of EQS. (8a) and (8b) introduce hard nonlinearity and non-convexity into a feasible region of a grid management model according to an embodiment of the invention. However, note that these constraints exhibit sparsity, owing to the dependency of x_(tk) ^(TE) on two 2-dimensional variables; that is, x_(n(t)) ^(ND) and x_(n(t)) ^(ND).

The constraints of EQ. (9a) state that, for every node n, at every time k, the real part of the total power produced minus the real part of the total power consumed is equal to the net power injected to the electric grid. The constraints of EQS. (9b) state that, for every node n, at every time k, the imaginary part of the total power produced minus the imaginary part of the total power consumed is equal to the net power injected to the electric grid. Note that EQS. (9) are highly sparse since the degree of nodes in real-world electric grids is typically small, i.e., 1 to 5 branches per node.

The constraints of EQ. (10a) define the interface between the building and electric grid models. For example, it may be required that a campus or building group cooling load be satisfied by the operation of chillers at all times. The constraints of EQ. (10b) ensure that the electricity load on campus is satisfied by on-site generation and the power grid.

The constraints of EQS. (11a)-(11l) are Variable Constraints: All building model decision variables in according to embodiments of the invention are box constrained, in that they have lower and upper limits.

Compact Model Formulation

A smart side energy management optimization model according to an embodiment of the disclosure can minimize the objective function of EQ. (1) subject to the constraints of EQS. (2)-(11). According to an embodiment of the disclosure, the aforementioned model may be recast using matrix vector notation. The matrices may be highly sparse for medium- to large-scale real-life smart site models. First, the various decision variables are packed into real vectors of appropriate dimensions:

x ^(CG) =vec{x _(1gk) ^(CG) ,x _(2gk) ^(CG)}_(g,k)  (15a)

x ^(CH) =vec{x _(1ck) ^(CH) ,x _(2ck) ^(CH) ,x _(3ck) ^(CH) ,x _(4ck) ^(CH)}_(c,k)  (15b)

x ^(CM) =vec{x _(1mk) ^(CM) ,x _(2mk) ^(CM) ,x _(3mk) ^(CM) ,x _(4mk) ^(CM) ,x _(5mk) ^(CM)}_(m,k)  (15c)

x ^(GN) =vec{x _(1gk) ^(GN) ,x _(2gk) ^(GN)}_(g,l)  (15d)

x ^(GT) =vec{x _(1gk) ^(GT) ,x _(2gk) ^(GT) ,x _(3gk) ^(GT) ,x _(4gk) ^(GT)}_(g,k)  (15e)

x ^(HR) =vec{x _(1hk) ^(HR) ,x _(2hk) ^(HR) ,x _(3hk) ^(HR) ,x _(4hk) ^(HR) ,x _(5hk) ^(HR) ,x _(6hk) ^(HR) ,x _(7hk) ^(HR) ,x _(8hk) ^(HR)}_(h,k)  (15f)

x ^(LD) =vec{x _(1lk) ^(LD) ,x _(2lk) ^(LD)}_(l,k)  (15g)

x ^(ND) =vec{x _(1nk) ^(ND) ,x _(2nk) ^(LD)}_(n,k)  (15h)

x ^(PM) =vec{x _(1pk) ^(PM)}_(p,k)  (15i)

x ^(ST) =vec{x _(1sk) ^(ST) ,x _(2sk) ^(ST) ,x _(3sk) ^(ST)}_(s,k)  (15j)

x ^(TE) =vec{x _(1tk) ^(TE) ,x _(2tk) ^(TE)}_(t,k)  (15k)

x ^(TS) =vec{x _(1tk) ^(TS) ,x _(2tk) ^(TS) ,x _(3tk) ^(TS) ,x _(4tk) ^(TS) ,x _(5tk) ^(TS) ,x _(6tk) ^(TS) ,x _(7tk) ^(TS) ,x _(8tk) ^(TS) ,x _(9tk) ^(TS)}_(t,k)  (15l)

Finally, decision variables of a smart site optimization model according to an embodiment of the disclosure are packed into a vector x with appropriate dimension:

x=vec{x ^(CG) ,x ^(CH) ,x ^(CM) ,x ^(GN) ,x ^(GT) ,x ^(HR) ,x ^(LD) ,x _(k) ^(ND) ,x ^(PM) ,x ^(ST) ,x ^(TE) ,x ^(TS)}  (16a)

According to an embodiment of the disclosure, projection matrices of appropriate dimensions, here denoted P*, may be used to obtain the aforementioned sub-vectors from x. For example, x^(GN)=P^(GN)x, and x^(TE)=P^(TE)x, where P^(GN) and P^(TE) are projection matrices. A smart site energy management model according to an embodiment of the disclosure can be cast compactly as follows:

$\begin{matrix} {\min\limits_{x}{\zeta (x)}} & \left( {17a} \right) \\ {{s.t.\mspace{14mu} {P^{BL}(x)}} = 0} & \left( {17b} \right) \\ {{P^{EG}(x)} = 0} & \left( {17c} \right) \\ {{P^{IF}(x)} = 0} & \left( {17d} \right) \\ {{\underset{\_}{x} \leq x \leq \overset{\_}{x}},} & \left( {17e} \right) \end{matrix}$

where P^(BL)(x), P^(EG)(x), and P^(IF)(x) denote the sets of polynomials defining the building (BL) model constraints, the electric grid (EG) model constraints, and the building-grid interface model (IF) constraints, respectively:

P ^(BL)(x)=vec{p ₁ ^(BL)(x), . . . , p _(m) _(b) ^(BL)(x)}  (18a)

P ^(EG)(x)=vec{p ₁ ^(EG)(x), . . . , p _(m) _(e) ^(EG)(x)}  (18b)

P ^(IF)(x)=vec{p ₁ ^(IF)(x), . . . , p _(m) _(i) ^(IG)(x)}  (18c)

where m_(b), m_(e) and m_(i) denote the number of building, electric grid and interface constraints, respectively. The constraints of EQS. (17b), (17c) and (17d) are equivalent to those of EQS. (2)-(7), (8)-(9), and (10), respectively. The constraints of EQ. (17e) are equivalent to those of EQ. (11). The objective function ζ is a linear or sum of squares polynomial in BL and EG decision variables.

According to an embodiment of the disclosure, the model is standardized to the following format:

$\begin{matrix} {\min\limits_{x}{\zeta (x)}} & \left( {19a} \right) \\ {{s.t.\mspace{14mu} {P^{BL}(x)}} = 0} & \left( {19b} \right) \\ {{P^{EG}(x)} = 0} & \left( {19c} \right) \\ {{P^{IF}(x)} = 0} & \left( {19d} \right) \\ {x \geq 0.} & \left( {19e} \right) \end{matrix}$

which may be equivalently derived from EQS. (17) using a following procedure: (i) change the reference variable: x←x−x, x−x; (ii) rewrite the ensuing inequality constraints x≦ x−x as equality constraints: x+s= x, where s≧0 is an auxiliary variable; (iii) append s to x; and (iv) append the new equality constraints to EQS. (19b) and (19c), as appropriate.

Semidefinite Relaxation A. SDP Formulation

A smart site energy management model according to an embodiment of the disclosure as presented above is a nonlinear and non-convex optimization model, possibly with a disconnected feasibility set. The constraints defining the feasible region contain linear and nonlinear terms. Note that all nonlinear constraints in a smart side model may be cast as bilinear terms. This can be achieved by the addition of auxiliary variables wherever necessary. For example, the constraint of EQ. (5c) is equivalent to:

a ₄ x ₂ ² +a ₃ x ₂ x ₁ +a ₂ x ₁ ² +a ₁ x ₁ =b ₁,  (20a)

x ₂ =x ₁ ².  (20a)

EQS. (20) are equivalent to

$\begin{matrix} {{{{\begin{pmatrix} 1 \\ x_{1} \\ x_{2} \end{pmatrix}^{T}\begin{bmatrix} 0 & {\frac{1}{2}a_{1}} & 0 \\ {\frac{1}{2}a_{1}} & a_{2} & {\frac{1}{2}a_{3}} \\ 0 & {\frac{1}{2}a_{3}} & a_{4} \end{bmatrix}}\begin{pmatrix} 1 \\ x_{1} \\ x_{2} \end{pmatrix}} = b_{1}},} & \left( {20c} \right) \end{matrix}$

or, using the matrix inner product operator, to

$\begin{matrix} {{{\begin{bmatrix} 0 & {\frac{1}{2}a_{1}} & 0 \\ {\frac{1}{2}a_{1}} & a_{2} & {\frac{1}{2}a_{3}} \\ 0 & {\frac{1}{2}a_{3}} & a_{4} \end{bmatrix} \cdot \begin{pmatrix} 1 \\ x_{1} \\ x_{2} \end{pmatrix}}\begin{pmatrix} 1 \\ x_{1} \\ x_{2} \end{pmatrix}^{T}} = {b_{1}.}} & \left( {20d} \right) \end{matrix}$

The recast of EQ. (20b) to an equivalent form, using the matrix inner product operator, is immediate, following the previous example.

Applying the scheme in EQS. (20), according to an embodiment of the disclosure, a smart site energy management model may be rewritten as EQS. (21):

$\begin{matrix} {\min \; {C \cdot X}} & \left( {21a} \right) \\ {{s.t.\mspace{14mu} {A^{BL}(X)}} = b^{BL}} & \left( {21b} \right) \\ {{A^{EG}(X)} = b^{EG}} & \left( {21c} \right) \\ {{A^{IF}(X)} = b^{IF}} & \left( {21d} \right) \\ {X = \begin{bmatrix} 1 & x^{T} \\ x & {xx}^{T} \end{bmatrix}} & \left( {21e} \right) \end{matrix}$

where x denotes a real vector aggregating all aforementioned decision variables; A^(BL)(X), A^(EG)(X), and A^(IF)(X) reformulates the building (BL) model constraints, the electric grid (EG) model constraints, and the building-grid interface model (IF) constraints, respectively, in a semi-definite programming format:

A ^(BL)(X)=vec{A ₁ ^(BL) ·X, . . . , A _(m) _(b) ^(BL) ·X},  (22a)

A ^(EG)(X)=vec{A ₁ ^(EG) ·X, . . . , A _(m) _(e) ^(EG) ·X}  (22b)

A ^(IF)(X)=vec{A ₁ ^(IF) ·X, . . . , A _(m) _(i) ^(IF) ·X},  (22c)

where m_(b), m_(e) and m_(i) denote the number of building, electric grid and interface constraints, respectively. EQS. (21) are equivalent to EQS. (23):

min C·X  (23a)

s.t. A ^(BL)(X)=b ^(BL)  (23b)

A ^(EG)(X)=b ^(EG)  (23c)

A ^(IF)(X)=b ^(IF)  (23d)

X

0  (23e)

rank(X)=1.  (23f)

EQS. (23) are nonlinear and non-convex because of the rank condition on the matrix variable X. According to an embodiment of the disclosure, the rank condition on X may be relaxed. This leads to a convex relaxation of a smart site management model according to an embodiment of the disclosure. According to an embodiment of the disclosure, the ensuing model may be solved using an interior point method that exploits the sparsity structure.

B. Solution Using Primal-Dual Interior Method

The algebra of a primal-dual interior point method for an SDP relaxation of a smart site energy management model according to an embodiment of the invention may be summarized below.

A relaxed primal SDP may be expressed as follows:

$\begin{matrix} {\min\limits_{X}\; {C \cdot X}} & \left( {24a} \right) \\ {{s.t.\mspace{14mu} {A^{BL}(X)}} = b^{BL}} & \left( {24b} \right) \\ {{A^{EG}(X)} = b^{EG}} & \left( {24c} \right) \\ {{A^{IF}(X)} = b^{IF}} & \left( {24d} \right) \\ {X \succcurlyeq 0.} & \left( {24e} \right) \end{matrix}$

The dual of EQS. (24) may be expressed as follows:

$\begin{matrix} {{\min\limits_{y,Z}{b^{BL} \cdot y^{BL}}} + {b^{EG} \cdot y^{EG}} + {b^{IF} \cdot y^{IF}}} & \left( {25a} \right) \\ {{{s.t.\mspace{14mu} {{\overset{\sim}{A}}^{BL}\left( y^{BL} \right)}} + {{\overset{\sim}{A}}^{EG}\left( y^{EG} \right)} + {{\overset{\sim}{A}}^{IF}\left( y^{IF} \right)} + Z} = C} & \left( {25b} \right) \\ {Z \succcurlyeq 0.} & \left( {25c} \right) \end{matrix}$

where Ã^(BL)(y^(BL)), Ã^(EG)(y^(EG)), and Ã^(IF)(y^(IF)) denote the transpose of A^(BL)(y^(BL)), A^(EG)(y^(EG)), and A^(IF)(y^(IF)):

$\begin{matrix} {{{{\overset{\sim}{A}}^{BL}(y)} = {\sum\limits_{i = 1}^{m_{b}}\; {y_{i}A_{i}^{BL}}}},} & \left( {26a} \right) \\ {{{{\overset{\sim}{A}}^{EG}(y)} = {\sum\limits_{i = 1}^{m_{e}}\; {y_{i}A_{i}^{EG}}}},} & \left( {26b} \right) \\ {{{{\overset{\sim}{A}}^{IF}(y)} = {\sum\limits_{i = 1}^{m_{b}}\; {y_{i}A_{i}^{IF}}}},} & \left( {26c} \right) \end{matrix}$

where m_(b), m_(e) and m_(i) denote the number of building, electric grid and interface constraints, respectively.

Given a primal-dual feasible (X, y, Z), i.e. if X and (y, Z) are feasible for EQS. (24) and (25), respectively, the duality gap is:

C·X−b ^(BL) ·y ^(BL) −b ^(EG) ·y ^(EG) −b ^(IF) ·y ^(IF) =X·Z≧0.  (27)

where equality holds; i.e. Z·X=0, if and only if XZ=0.

A solution according to an embodiment of the disclosure includes solving the following parameterized SDP for a variety of positive real values μ as μ tends to zero:

$\begin{matrix} {{\min\limits_{X}\; {C \cdot X}} - {\mu \; {\ln \left( {\det (X)} \right)}}} & \left( {28a} \right) \\ {{s.t.\mspace{14mu} {A^{BL}(X)}} = b^{BL}} & \left( {28b} \right) \\ {{A^{EG}(X)} = b^{EG}} & \left( {28c} \right) \\ {{A^{IF}(X)} = b^{IF}} & \left( {28d} \right) \\ {X \succcurlyeq 0.} & \left( {28e} \right) \end{matrix}$

where ln denotes the natural logarithm function. The optimality, or Karush-Kuhn-Tucker (KKT) conditions, for EQS. (28) are:

C−μX ⁻¹ −Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0,  (29a)

A ^(BL)(X)−b ^(BL)=0  (29b)

A ^(EG)(X)−b ^(EG)=0  (29c)

A ^(IF)(X)−b ^(IF)=0  (29d)

X

0.  (29e)

According to an embodiment of the disclosure, define Z=μX⁻¹, which implies XZ=μI, and recast the KKT conditions as follows:

C−Z−Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0,  (30a)

A ^(BL)(X)−b ^(BL)=0  (30b)

A ^(EG)(X)−b ^(EG)=0  (30c)

A ^(IF)(X)−b ^(IF)=0  (30d)

XZ−μI=0.  (30e)

where X

0.

The nonlinear algebraic system of EQS. (30) can be solved using an appropriate Newton-like method. According to an embodiment of the invention, a method adapted from the following procedure may be used, with reference to the steps of the flowchart of FIG. 3:

-   (1) Set up a stopping criteria, and choose an initial point (X⁰, y⁰,     Z⁰) such that X⁰     0 and Z⁰     0. Set (X, y, Z)←(X⁰, y⁰, Z⁰). (Step 31) -   (2) If the current iterate (X, y, Z) satisfies the stopping     criteria, stop the iteration. (Step 32) -   (3) Choose a search direction (ΔX, Δy, ΔZ). (Step 33) -   (4) Choose a primal step length α_(p) and a dual step length α_(d)     such the following conditions hold (Step 34):

X+α _(p) ΔX

0,  (31a)

Z+α _(d) ΔZ

0.  (31b)

-   (5) Update the variables (Step 35):

X←X+α _(p) ΔX,  (32a)

(y,Z)←(y,Z)+α_(d)(Δy,ΔZ).  (32b)

-   (6) Go to step 2.

According to an embodiment of the disclosure, the search direction (ΔX, Δy, ΔZ) can be determined by solving the following algebraic system:

ΔZ+Ã ^(BL)(Δy ^(BL))+Ã ^(EG)(Δy ^(EG))+Ã ^(IF)(Δy ^(IF))=−R _(C),  (33a)

A ^(BL)(ΔX)=−_(p) ^(BL)  (33b)

A ^(EG)(ΔX)=−r _(p) ^(EG)  (33c)

A ^(IF)(ΔX)=−r _(p) ^(IF)  (33d)

H _(p)(ΔXZ+XΔZ)=−R _(d)  (33e)

where

σε[0,1],  (34a)

R _(C) =Ã ^(BL)(Δy ^(BL))+Ã ^(EG)(Δy ^(EG))+Ã ^(IF)(Δy ^(IF))+ΔZ−C,  (34b)

r _(p) ^(BL) =A ^(BL)(X)−b ^(BL),  (34c)

r _(p) ^(EG) =A ^(EG)(X)−b ^(EG),  (34d)

r _(p) ^(IF) =A ^(IF)(X)−b ^(IF),  (34e)

r _(d) =H _(P)(XZ)−σμI  (34f)

and H_(P) is a symmetrization operator, for some regular matrix P, which ensures that XZ is symmetric at every iterate. For example, P=Z^(1/2) and P=I yields:

$\begin{matrix} {\mspace{79mu} {{{H_{P}({XZ})} = {\frac{1}{2}\left( {{PXZP}^{- 1} + \left( {PXZP}^{- 1} \right)^{T}} \right)}},}} & \left( {35a} \right) \\ {{H_{P}\left( {{\Delta \; {XZ}} + {X\; {\Delta Z}}} \right)} = {\frac{1}{2}{\left( {{{P\left( {{\Delta \; {XZ}} + {X\; \Delta \; Z}} \right)}P^{- 1}} + \left( {{P\left( {{\Delta \; {XZ}} + {X\; \Delta \; Z}} \right)}P^{- 1}} \right)^{T}} \right).}}} & \left( {35b} \right) \end{matrix}$

C. Exploiting Sparsity

A computationally intensive step in an interior-point method for semidefinite programming is the calculation of the Newton direction. According to an embodiment of the invention, exploiting the sparsity of the data matrices and/or adaptively ignoring unnecessary constraints may result in reducing the computational cost of each iteration, thus increasing overall computational performance.

Let M^(BL), M^(EG), and M^(IF) denote the index sets of building, electric-grid and building-grid interface constraints, respectively. Let M^(BL) be shorthand for the union of M^(BL), M^(EG), and M^(IF). The matrices A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), are sparse. For numerically efficiency, especially in large-scale instances of a smart site optimization model according to an embodiment of the invention, embodiments may exploit the sparsity structure of the data in the solution procedure. This can be achieved in the computation of the primal/dual search direction; that is, in step 3 of a procedure according to an embodiment of the invention as outlined above. There are many ways of obtaining the search direction. According to embodiments of the invention, the search direction introduced by Nesterov and Todd, “Primal-dual interior-point methods for self-scaled cones,” SIAM Journal on Optimization, Vol. 8, No. 2, pp. 324-364, 1998, the contents of which are herein incorporated by reference in their entirety, is used, adapting the derivation by Fujisawa, et al., “Exploiting sparsity in primal dual interior-point methods for semidefinite programming,” Mathematical Programming, Vol. 79, No. 1, pp. 235-253, 1997, the contents of which are also herein incorporated by reference in their entirety.

According to an embodiment of the disclosure, the search direction may be obtained as a solution (ΔX, Δy, ΔZ) of the following nonlinear algebraic system:

$\begin{matrix} {\mspace{79mu} {{{{A_{i}^{BL} \cdot \Delta}\; X} = r_{i}^{BL}},{\forall{i \in M^{BL}}},}} & \left( {36a} \right) \\ {\mspace{79mu} {{{{A_{i}^{EG} \cdot \Delta}\; X} = r_{i}^{EG}},{\forall{i \in M^{EG}}},}} & \left( {36b} \right) \\ {\mspace{79mu} {{{{A_{i}^{IF} \cdot \Delta}\; X} = r_{i}^{IF}},{\forall{i \in M^{IF}}},}} & \left( {36c} \right) \\ {{{{\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} + {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} + {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}} + {\Delta \; Z}} = {- R_{C}}},} & \left( {36d} \right) \\ {\mspace{79mu} {{{{\Delta \; {XW}^{- 1}} + {W\; \Delta \; Z}} = K},}} & \left( {36e} \right) \end{matrix}$

where WεS^(n) and Kε

^(n×n) are determined by the current point (X, y, Z) of the system of EQS. (36):

$\begin{matrix} {W = {{X^{\frac{1}{2}}\left( {X^{\frac{1}{2}}{ZX}^{\frac{1}{2}}} \right)}^{- \frac{1}{2}}X^{\frac{1}{2}}}} & \left( {37a} \right) \\ {{K = {{\frac{\beta}{n}\left( {X \cdot Z} \right)I} - {XZ}}},} & \left( {37b} \right) \end{matrix}$

for some βε(0,1).

According to an embodiment of the disclosure, to ensure that EQS. (36) has a unique solution, it suffices to enforce the linear independence constraint qualification (LICQ) of the matrices A_(i) ^(BL), for all iεM^(BL), A_(i) ^(BG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF). The LICQ can be enforced during a presolution stage using any standard method for eliminating redundant constraints.

According to an embodiment of the disclosure, EQS. (36) may be recast as follows:

$\begin{matrix} {\mspace{79mu} {{{\overset{\sim}{A}\Delta \; y} = {- \overset{\sim}{r}}},}} & \left( {38a} \right) \\ {{{\Delta \; Z} = {{- R_{C}} - {\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} - {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} - {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}}}},} & \left( {38b} \right) \\ {\mspace{79mu} {{{\Delta \; X} = {\left( {K - {W\; \Delta \; Z}} \right)W}},}} & \left( {38c} \right) \end{matrix}$

where the matrix Ã and the vector {tilde over (r)} are partitioned as follows:

$\begin{matrix} {{\overset{\sim}{A} = \begin{bmatrix} {\overset{\sim}{A}}^{BB} & {\overset{\sim}{A}}^{BE} & {\overset{\sim}{A}}^{BI} \\ \left( {\overset{\sim}{A}}^{BE} \right)^{T} & {\overset{\sim}{A}}^{EE} & {\overset{\sim}{A}}^{EI} \\ \left( {\overset{\sim}{A}}^{BI} \right)^{T} & \left( {\overset{\sim}{A}}^{EI} \right)^{T} & {\overset{\sim}{A}}^{II} \end{bmatrix}},{{\overset{\sim}{r}}_{b} = {\begin{bmatrix} {\overset{\sim}{r}}_{b}^{BL} \\ {\overset{\sim}{r}}_{b}^{EG} \\ {\overset{\sim}{r}}_{b}^{IF} \end{bmatrix}.}}} & \left( {39a} \right) \end{matrix}$

The elements of the submatrices of Ã, and the elements of the subvectors of {tilde over (r)}, are given as follows:

Ã _(ij) ^(BB) =WA _(i) ^(BL) W·A _(j) ^(BL) ,∀i,jεM ^(BL),  (40a)

Ã _(ij) ^(BL) =WA _(i) ^(BL) W·A _(j) ^(EG) ,∀iεM ^(BL) ,∀jεM ^(EG),  (40b)

Ã _(ij) ^(BI) =WA _(i) ^(BL) W·A _(j) ^(IF) ,∀iεM ^(BL) ,∀jεM ^(IF),  (40c)

Ã _(ij) ^(EE) =WA _(i) ^(EG) W·A _(j) ^(EG) ,∀i,jεM ^(EG),  (40d)

Ã _(ij) ^(EI) =WA _(i) ^(EG) W·A _(j) ^(IF) ,∀iεM ^(EG) ,∀jεM ^(IF),  (40e)

Ã _(ij) ^(II) =WA _(i) ^(IF) W·A _(j) ^(IF) ,∀i,jεM ^(IF),  (40f)

{tilde over (r)} _(b) _(i) ^(BL) =r _(b) _(i) ^(BL)+(K+WR _(C))W·A _(i) ^(BL) ,∀iεM ^(BL),  (40g)

{tilde over (r)} _(b) _(i) ^(EG) =r _(b) _(i) ^(EG)+(K+WR _(C))W·A _(i) ^(EG) ,∀iεM ^(EG),  (40h)

{tilde over (r)} _(b) _(i) ^(IF) =r _(b) _(i) ^(IF)+(K+WR _(C))W·A _(i) ^(IF) ,∀iεM ^(IF).  (40i)

The matrices X, Z and A are symmetric and dense even when A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), are sparse. Thus, solving the algebraic system of EQS. (38) for (ΔX, Δy, ΔZ), using a Cholesky factorization method, is CPU-intensive. In a worst case, this would involve O(m³)+O(n³) arithmetic operations, where m and n denote the number of rows of A and X, respectively. However, according to embodiments of the invention, computing Ã and {tilde over (r)} using EQS. (40) uses, in the worst case, O(mn²+m²n²) and O(n³+mn²) arithmetic operations, respectively. The computation of Ã is the most CPU intensive part of the solution process for obtaining the search direction (ΔX, Δy, ΔZ).

Let η_(i) ^(BL), η_(i) ^(EG), and η_(i) ^(IF) denote the number of nonzero elements in A_(i) ^(BL), A_(i) ^(EG), and A_(i) ^(IF), respectively. Let Ξ^(BL), Ξ^(EG), and Ξ^(IF) denote the set of permutations of the index sets M^(BL), M^(EG), and M^(IF), respectively. Let Ξ denote the union of Ξ^(BL), Ξ^(EG), and Ξ^(IF). Let ξ denote some element of Ξ; that is, ξ is a permutation of the index set defined by the union of M^(BL), M^(EG), and M^(IF). According to embodiments of the disclosure, the elements of the matrix Ã can be computed using one of the sets of following EQS. (42), (43), or (44). These equations make more efficient usage of computer resources, such as CPU time usage, memory usage, disk usage, and network usage. This generalization can be achieved by estimating, off-line, the efficiency of computing the elements of the matrix Ã.

$\begin{matrix} {{F_{i}^{BL} = {A_{\xi {(i)}}^{BL}W}},{\forall{i \in \mathcal{M}^{BL}}},} & \left( {41a} \right) \\ {{F_{i}^{EG} = {A_{\xi {(i)}}^{EG}W}},{\forall{i \in \mathcal{M}^{EG}}},} & \left( {41b} \right) \\ {{F_{i}^{IF} = {A_{\xi {(i)}}^{IF}W}},{\forall{i \in \mathcal{M}^{IF}}},} & \left( {41c} \right) \\ {{G_{i}^{BL} = {WF}_{i}^{BL}},{\forall{i \in \mathcal{M}^{BL}}},} & \left( {41d} \right) \\ {{G_{i}^{EG} = {WF}_{i}^{EG}},{\forall{i \in \mathcal{M}^{EG}}},} & \left( {41e} \right) \\ {{G_{i}^{IF} = {WF}_{i}^{IF}},{\forall{i \in {\mathcal{M}^{IF}.}}}} & \left( {41f} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {G^{BL} \cdot A_{\xi {(j)}}^{BL}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},} & \left( {42a} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {G^{BL} \cdot A_{\xi {(j)}}^{EG}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},} & \left( {42b} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {G^{BL} \cdot A_{\xi {(j)}}^{IF}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},} & \left( {42c} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {G^{EG} \cdot A_{\xi {(j)}}^{EG}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},} & \left( {42d} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {G^{EG} \cdot A_{\xi {(j)}}^{IF}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},} & \left( {42e} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {G^{IF} \cdot A_{\xi {(j)}}^{IF}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}} & \left( {42f} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},} & \left( {43a} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},} & \left( {43b} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},} & \left( {43c} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},} & \left( {43d} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},} & \left( {43e} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{IF} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}} & \left( {43f} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},} & \left( {44a} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},} & \left( {44b} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},} & \left( {44c} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},} & \left( {44d} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},} & \left( {44e} \right) \\ {{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{IF} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}} & \left( {44f} \right) \end{matrix}$

Let d_(1i) ^(BL)(î), d_(2i) ^(BL)(î), and d_(3i) ^(BL)(î) denote the CPU times to compute Ã_(ξ(i)ξ(j)) ^(BB), for all i,jεM^(BL), J≧i by EQS. (42), (43), and (44), respectively. Let d_(1i) ^(EG)(î), d_(2i) ^(EG)(î), and d_(3i) ^(BG)(î) denote the CPU times to compute Ã_(ξ(i)ξ(j)) ^(EE), for all i,jεM^(EG), j≧i by EQS. (42), (43), and (44), respectively. Let d_(1i) ^(IF)(î), d_(2i) ^(IF)(î), and d_(3i) ^(IFG)(î) denote the CPU times to compute Ã_(ξ(i)ξ(j)) ^(II), for all i,jεM^(IF), j≧i by EQS. (42), (43), and (44), respectively.

Define the following quantities:

$\begin{matrix} {{{d_{*i}^{BL}(\xi)} = {\min \left\{ {{d_{1\; i}^{BL}(\xi)},{d_{2\; i}^{BL}(\xi)},{d_{3\; i}^{BL}(\xi)}} \right\}}},{\forall{i \in \mathcal{M}^{BL}}},} & \left( {45a} \right) \\ {{{d_{*i}^{EG}(\xi)} = {\min \left\{ {{d_{1\; i}^{EG}(\xi)},{d_{2\; i}^{EG}(\xi)},{d_{3\; i}^{EG}(\xi)}} \right\}}},{\forall{i \in \mathcal{M}^{EG}}},} & \left( {45b} \right) \\ {{{d_{*i}^{IF}(\xi)} = {\min \left\{ {{d_{1\; i}^{IF}(\xi)},{d_{2\; i}^{IF}(\xi)},{d_{3\; i}^{IF}(\xi)}} \right\}}},{\forall{i \in \mathcal{M}^{IF}}},} & \left( {45c} \right) \\ {{d_{*}(\xi)} = {{\sum\limits_{i \in \mathcal{M}^{BL}}\; {d_{*i}^{BL}(\xi)}} + {\sum\limits_{j \in \mathcal{M}^{EG}}\; {d_{*j}^{BL}(\xi)}} + {\sum\limits_{ \in \mathcal{M}^{IF}}\; {{d_{*}^{BL}(\xi)}.}}}} & \left( {45d} \right) \end{matrix}$

The following proposition states that the minimum quantity d·(ξ) reaches its minimum if the index sets are sorted in descending order.

Proposition 1:

(1) The permutation ξ* minimizes d·(ξ) over all ξεΞ and only if ξ* satisfies the following conditions:

η_(ξ*(1)) ^(BL)≧η_(ξ*(2)) ^(BL)≧ . . . ≧η_(ξ*(|M) ^(BL)|)^(BL)  (46a)

η_(ξ*(1)) ^(EG)≧η_(ξ*(2)) ^(EG)≧ . . . ≧η_(ξ*(|M) ^(EG)|)^(EG)  (46b)

η_(ξ*(1)) ^(IF)≧η_(ξ*(2)) ^(IF)≧ . . . ≧η_(ξ*(|M) ^(IF)|)^(IF)  (46c)

where η_(i) ^(BL), η_(i) ^(EG), η_(i) ^(IF) are the number of nonzero elements in A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF).

(2) If ξ satisfies EQS. (46), then there exists some indices q₁ ^(BL), q₂ ^(BL)εM^(BL), q₁ ^(BL)≦q₂ ^(BL), q₁ ^(BG), q₂ ^(EG)εM^(EG), q₁ ^(EG)≦q₂ ^(EG), and q₁ ^(IF), q₂ ^(IF)εM^(IF), q₁ ^(IF)≦q₂ ^(IF) such that

d _(1i) ^(BL)(ξ)≦d _(2i) ^(BL)(ξ),d _(1i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if 0<i≦q ₁ ^(BL),  (47a)

d _(2i) ^(BL)(ξ)<d _(1i) ^(dL)(ξ),d _(2i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if q ₁ ^(BL) <i≦q ₂ ^(BL),  (47b)

d _(3i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(3i) ^(BL)(ξ)<d _(2i) ^(BL)(ξ) if q ₂ ^(BL) <i≦|M ^(BL)|,  (47c)

d _(1i) ^(EG)(ξ)≦d _(2i) ^(EG)(ξ),d _(1i) ^(BL)(ξ)≦d _(3i) ^(EG)(ξ) if 0<i≦q ₁ ^(EG),  (47d)

d _(2i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(2i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if q ₂ ^(EG) <i≦q ₂ ^(EG),  (47e)

d _(3i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(3i) ^(EG)(ξ)<d _(2i) ^(EG)(ξ) if q ₂ ^(EG) <i≦|M ^(EG)|,  (47f)

d _(1i) ^(IF)(ξ)≦d _(2i) ^(IF)(ξ),d _(1i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if 0<i≦q ₁ ^(IF),  (47g)

d _(2i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(2i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if q ₁ ^(IF) <i≦q ₂ ^(IF),  (47h)

d _(3i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(3i) ^(IF)(ξ)<d _(2i) ^(IF)(ξ) if q ₂ ^(IF) <i≦|M ^(IF)|.  (47i)

An enhanced procedure according to an embodiment of the disclosure that can exploit the sparsity structure of a smart-site energy management model according to an embodiment of the disclosure may be summarized as follows, with reference to the steps of the flowchart of FIG. 4:

-   (1) Count the number η_(i) ^(BL), η_(i) ^(EG), η_(i) ^(IF) of     nonzero elements in A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for     all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF) (Step 41). -   (2) Sort the index sets M^(BL), M^(EG), M^(IF) in descending order     of the numbers {η_(i) ^(BL)}, {η_(i) ^(EG)}, and {η_(i) ^(IF)} of     nonzero elements in A_(i) ^(BL), for all iεM^(BL), A_(i) ^(BG), for     all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), respectively. For     each iεM^(BL), compute d_(1i) ^(BL)(ξ*), compute d_(2i) ^(BL)(ξ*)     and compute d_(3i) ^(BL)(ξ*). Find q₁ ^(BL) and q₂₁ ^(BL) satisfying     the second condition of Proposition 1. For each iεM^(EG), compute     d_(1i) ^(BG)(ξ*), compute d_(2i) ^(BG)(ξ*) and compute d^(3i)     _(BG)(ξ*). Find q₁ ^(EG) and q₂₁ ^(EG) satisfying the second     condition of Proposition 1. For each iεM^(IF), compute d_(1i)     ^(IF)(ξ*), compute d_(2i) ^(IF)(ξ*) and compute d_(2i) ^(IF)(ξ*).     Find q₁ ^(IF) and q₂₁ ^(IF) satisfying the second condition of     Proposition 1. (Step 42). -   (3) Set up a stopping criteria, and choose an initial point (X⁰, y⁰,     Z⁰) such that X⁰     0 and Z⁰     0. Set (X, y, Z)←(X⁰, y⁰, Z⁰) (Step 43). -   (4) For every iεM^(BL), compute Ã_(ξ*(i)ξ*(j)) ^(BB), for all j≧i,     Ã_(ξ*(i)ξ*(j)) ^(BE), for all jεM^(EG), Ã_(ξ*(i)ξ*(j)) ^(BI), for     all jεM^(IF), using EQS. (42) if 0<i≦q₁ ^(BL), EQS. (43) if q₁     ^(BL)<i≦q₂ ^(BL), or EQS. (44) otherwise; i.e. if q₁ ^(BL)<i<M^(BL).     For every iεM^(EG), compute Ã_(ξ*(i)ξ*(j)) ^(EE), for all j≧i,     Ã_(ξ*(i)ξ*(j)) ^(EI), for all jεM^(IF), using EQS. (42) if 0<i≦q₁     ^(BG), EQS. (43) if q₁ ^(EG)<i≦q₂ ^(EG), or EQS. (44) otherwise;     i.e. if q₂ ^(EG)<i<M^(EG). For every iεM^(IF), compute     Ã_(ξ*(i)ξ*(j)) ^(II), for all j≧i, using EQS. (42) if 0<i≦q₁ ^(IF),     EQS. (43) if q₁ ^(IF)<i≦q₂ ^(IF), or EQS. (44) otherwise; i.e. if q₂     ^(IF)<i<M^(IF). Choose a search direction (ΔX, Δy, ΔZ) (Step 44). -   (5) Choose a primal step length α_(p) and a dual step length α_(d)     such the following conditions hold (Step 45):

X+α _(p) ΔX

0,  (48a)

Z+α _(d) ΔZ

0.  (48b)

-   (6) Update the variables (Step 46):

X←X+α _(p) ΔX,  (49a)

(y,Z)←(y,Z)+α_(d)(Δy,ΔZ).  (49b)

-   (7) If the current iterate (X, y, Z) satisfies the stopping     criteria, stop the iteration, otherwise go to step 4 (Step 47).

System Implementations

It is to be understood that embodiments of the present invention can be implemented in various forms of hardware, software, firmware, special purpose processes, or a combination thereof. In one embodiment, the present invention can be implemented in software as an application program tangible embodied on a computer readable program storage device. The application program can be uploaded to, and executed by, a machine comprising any suitable architecture.

FIG. 5 is a block diagram of an exemplary computer system for implementing a method for a convex relaxation of a class of combined building-electric grid energy management models using a semidefinite programming (SDP) approach, according to an embodiment of the invention. Referring now to FIG. 5, a computer system 51 for implementing the present invention can comprise, inter alia, a central processing unit (CPU) 52, a memory 53 and an input/output (I/O) interface 54. The computer system 51 is generally coupled through the I/O interface 54 to a display 55 and various input devices 56 such as a mouse and a keyboard. The support circuits can include circuits such as cache, power supplies, clock circuits, and a communication bus. The memory 53 can include random access memory (RAM), read only memory (ROM), disk drive, tape drive, etc., or a combinations thereof. The present invention can be implemented as a routine 57 that is stored in memory 53 and executed by the CPU 52 to process the signal from the signal source 58. As such, the computer system 51 is a general purpose computer system that becomes a specific purpose computer system when executing the routine 57 of the present invention.

The computer system 51 also includes an operating system and micro instruction code. The various processes and functions described herein can either be part of the micro instruction code or part of the application program (or combination thereof) which is executed via the operating system. In addition, various other peripheral devices can be connected to the computer platform such as an additional data storage device and a printing device.

It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures can be implemented in software, the actual connections between the systems components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings of the present invention provided herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention.

While the present invention has been described in detail with reference to exemplary embodiments, those skilled in the art will appreciate that various modifications and substitutions can be made thereto without departing from the spirit and scope of the invention as set forth in the appended claims.

APPENDIX Nomenclature

The main notation used throughout the present paper is summarized below.

Two-Letter Mnemonic of Energy Resources

BL Building.

BR Branch.

CD Condenser.

CG Chiller group.

CH Chiller.

CM Building group

DA Deaeretor.

EG Electric grid (excluding buildings)

GN Generator.

GS Gas

GT Gas turbine.

HR Heat recovery steam generator

IF Building-grid interface

LD Load

ND Node.

PM Pump.

ST Steam turbine.

TE Terminal.

TS Thermal energy storage (TES).

WR Water

Parameters

π_(1gk) ^(CG) Chilled water supply temperature of combined stream from all chillers (K)

π_(1ck) ^(CD) Condenser i pressure 1 in Steam Loop (kPa)

π_(2ck) ^(CD) Condenser i pressure 2 in Steam Loop (kPa)

π_(1ck) ^(CH) Power consumed by chiller c condenser pumps (kW)

π_(2ck) ^(CH) Power consumed by chiller c chilled water pumps (kW)

π_(3ck) ^(CH) Power requirement by chiller c cooling tower fans (kW)

π_(1mk) ^(CM) Cost of electricity purchase from grid by building group m at time k (S/KWh)

π_(2mk) ^(CM) Electricity demand from building group m at time k (MW)

π_(3mk) ^(CM) Cooling demand from building group m at time k (kW)

π_(1dk) ^(DA) Deaerator d pressure in Steam Loop (kPa)

π_(1gk) ^(GT) Ideal gas specific heat capacity of steam (KJ/kg-K)

π_(1gk) ^(CT) Cost of fuel purchase for GT g at time k (S/kg)

π_(1hk) ^(HR) Water stream pressure loss factor in HR h at time k

π_(2hk) ^(HR) Overall effectiveness of HR h at time k

π_(1sk) ^(ST) Overall efficiency of ST s at time k

π_(1tk) ^(TS) Thermal transport delay time in discharging mode of TS t at time k (s)

π_(2tk) ^(TS) TES thermal transport delay time in charging mode(s)

π_(3tk) ^(TS) Time constant multiplier associated with TS upper layer in charging mode.

π_(4tk) ^(TS) Time constant multiplier associated with TS upper layer in discharging mode.

π_(5tk) ^(TS) Inter-layer heat transfer coefficient of TS in discharging mode (kW/m²-K)

π_(6tk) ^(TS) Time constant multiplier associated with the TES bottom layer in discharging mode.

π_(7tk) ^(TS) Inter-layer heat transfer coefficient of TES in discharging mode (kW/m²-K)

π_(8tk) ^(TS) Time constant multiplier associated with the TES bottom layer in discharging mode.

π_(9tk) ^(TS) Area of TES tank (m²)

π_(1wk) ^(WR) Density of water (kg/s)

π_(2wk) ^(WR) Enthalpy of vaporization of water.

π_(2wk) ^(WR) Specific heat capacity of water (kJ/kg-K)

Variables

x_(1gk) ^(CG) Temperature of return water to chiller group g at time k (K)

x_(2gk) ^(CG) Net chilled water mass flow rate through chiller group g at time k (kg/s)

x_(1ck) ^(CG) Power requirement by chiller compressor c at time k (kW)

x_(2ck) ^(CG) Supply water temperature from chiller c at time k (K)

x_(3ck) ^(CG) Cooling provided by chiller c at time k (kW)

x_(4ck) ^(CG) Chilled water mass flow rate in chiller c at time k (kg/s)

x_(1mk) ^(CM) Chilled water flow rate through building group m at time k (kg/s)

x_(2mk) ^(CM) Chilled water supply temperature to building group m at time k (K)

x_(3mk) ^(CM) Temperature of return water from building group m at time k (K)

x_(4mk) ^(CM) Mass flow rate of steam used for heating building group m at time k (kg/s)

x_(5mk) ^(CM) Power purchase from electric grid by building group m at time k (MW)

x_(1gk) ^(GN) Real-part power produced by generator g at time k, (MW)

x_(2gk) ^(GN) Imaginary-part of power produced by generator g at time k, (MVAr)

x_(1gk) ^(GT) Flow rate of exhaust gas of GT g at time k (kg/s)

x_(2gk) ^(GT) Turbine exit temperature from GT g at time k (K)

x_(3gk) ^(GT) Power produced by GT g at time k (MW)

x_(4gk) ^(GT) Fuel consumption rate by GT g at time k (kg/s)

x_(1hk) ^(HR) Inlet water temperature to HR h at time k (K)

x_(2hk) ^(HR) Steam temperature exiting HR h at time k (K)

x_(3hk) ^(HR) Saturation temperature in HR h at time k.

x_(4hk) ^(HR) Gas temperature exiting HR h at time k (K)

x_(5hk) ^(HR) Steam pressure exiting HR h at time k (kPa)

x_(6hk) ^(HR) Saturation pressure in HR h at time k.

x_(7hk) ^(HR) Steam pressure entering HR h at time k (kPa).

x_(8hk) ^(HR) Water mass flow rate through HR h at time k (kg/s)

x_(1lk) ^(LD) Real-part of power consumed by load l at time k, (MW)

x_(2lk) ^(LD) Imaginary-part of power consumed by load l at time k, (MVAr)

x_(1nk) ^(ND) Voltage magnitude at node n at time k, (p.u.)

x_(2nk) ^(ND) Voltage angle at node n at time k, (radian)

x_(1pk) ^(PM) Power consumption by pump p in steam loop at time k (kW)

x_(1sk) ^(ST) Power produced by ST s at time k (MW)

x_(2sk) ^(ST) Mass flow rate of steam used to drive ST s at time k (kg/s)

x_(2sk) ^(ST) Fraction of cogenerated steam used to drive ST s at time k

x_(1tk) ^(TE) Real-part of power flow at terminal t at time k, (MW)

x_(2tk) ^(TE) Imaginary-part of power flow at terminal t at time k, (MVAr)

x_(1tk) ^(TS) Top layer temperature in 2-zone model of TS t at time k (K)

x_(2tk) ^(TS) Bottom layer temperature in 2-zone model of TS t at time k (K)

x_(3tk) ^(TS) Inlet stream temperature in charging mode of TS t at time k (K)

x_(4tk) ^(TS) Outlet stream temperature in charging mode of TS t at time k (K)

x_(5tk) ^(TS) Outlet stream temperature in discharging mode of TS t at time k (K)

x_(6tk) ^(TS) Inlet stream temperature in discharging mode of TS t at time k (K)

x_(7tk) ^(TS) Chilled water circulation through TS t at time k (kg/s)

x_(8tk) ^(TS) Outlet stream temperature in charging mode of TS t at time k, as predicted by detailed model (K)

x_(9tk) ^(TS) Outlet stream temperature in discharging mode of TS t at time k, as predicted by detailed model (K) 

What is claimed is:
 1. A method for optimizing a cost of electric power generation in a smart site energy management model, comprising the steps of: determining a matrix X that minimizes a semidefinite program C·X−μln(det(X)) subject to constraints A ^(BL)(X)=b ^(BL) A ^(EG)(X)=b ^(EG), A ^(IF)(X)=b ^(IF), X

0, for positive real values of μ as μ approaches zero, wherein C·X is a cost function that models a smart building-grid energy system of a plurality of buildings on a site interconnected with electric power grid energy resources wherein C is a matrix formed of parameters of components of a building model and an electric grid model, X is a matrix formed of decision variables of the building model and electric grid model, A^(BL)(X), A^(EG)(X), and A^(IF)(X) are sparse matrices that represent constraints due to a building (BL) model, an electric grid (EG) model, and an building-grid interface model (IF), respectively, in a semi-definite programming format, b^(BL), b^(EG), and b^(IF) are constants derived from the constraints of the building model and electric grid model; and exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) in determining a search direction for determining the vector X.
 2. The method of claim 1, wherein solving the primal semi-definite program comprises: imposing optimality conditions on the primal semi-definite program to derive C−Z−Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0 A ^(BL)(X)−b ^(BL)=0, A ^(EG)(X)−b ^(EG)=0, A ^(IF)(X)−b ^(IF)=0, XZ−μI=0 wherein Z=μX⁻¹, X

0, and Ã^(BL)(y^(BL)), Ã^(EG)(y^(EG)) and Ã^(IF) (y^(IF)) are transposes of A^(BL)(y^(BL)), A^(EG)(y^(EG)), and A^(IF)(y^(IF)) wherein y^(BL), y^(EQ) and y^(IF) are variables in a dual program of the primal semi-definite program; and choosing a search direction (ΔX, Δy, ΔZ) by solving ${{\overset{\sim}{A}\Delta \; y} = {- \overset{\sim}{r}}},{{\Delta \; Z} = {{- R_{C}} - {\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} - {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} - {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}}}},{{\Delta \; X} = {\left( {K - {W\; \Delta \; Z}} \right)W}},$ wherein $W = {{X^{\frac{1}{2}}\left( {X^{\frac{1}{2}}{ZX}^{\frac{1}{2}}} \right)}^{- \frac{1}{2}}X^{\frac{1}{2}}}$ is a positive semidefinite symmetric matrix of order n, an $K = {{\frac{\beta}{n}\left( {X \cdot Z} \right)I} - {XZ}}$ is an n×n real matrix that are determined by a current point (X, y, Z) for some βε(0,1), wherein ${\overset{\sim}{A} = \begin{bmatrix} {\overset{\sim}{A}}^{BB} & {\overset{\sim}{A}}^{BE} & {\overset{\sim}{A}}^{BI} \\ \left( {\overset{\sim}{A}}^{BE} \right)^{T} & {\overset{\sim}{A}}^{EE} & {\overset{\sim}{A}}^{EI} \\ \left( {\overset{\sim}{A}}^{BI} \right)^{T} & \left( {\overset{\sim}{A}}^{EI} \right)^{T} & {\overset{\sim}{A}}^{II} \end{bmatrix}},{{\overset{\sim}{r}}_{b} = {\begin{bmatrix} {\overset{\sim}{r}}_{b}^{BL} \\ {\overset{\sim}{r}}_{b}^{EG} \\ {\overset{\sim}{r}}_{b}^{IF} \end{bmatrix}.}},{{\overset{\sim}{A}}_{ij}^{BB} = {{WA}_{i}^{BL}{W \cdot A_{j}^{BL}}}},{\forall i},{j \in \mathcal{M}^{BL}},{{\overset{\sim}{A}}_{ij}^{BE} = {{WA}_{i}^{BL}{W \cdot A_{j}^{EG}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{ij}^{BI} = {{WA}_{i}^{BL}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{EE} = {{WA}_{i}^{EG}{W \cdot A_{j}^{EG}}}},{\forall i},{j \in \mathcal{M}^{EG}},{{\overset{\sim}{A}}_{ij}^{EI} = {{WA}_{i}^{EG}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{II} = {{WA}_{i}^{IF}{W \cdot A_{j}^{IF}}}},{\forall i},{j \in \mathcal{M}^{IF}},{{\overset{\sim}{r}}_{b_{i}}^{BL} = {r_{b_{i}}^{BL} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{BL}}}}},{\forall{i \in \mathcal{M}^{BL}}},{{\overset{\sim}{r}}_{b_{i}}^{EG} = {r_{b_{i}}^{EG} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{EG}}}}},{\forall{i \in \mathcal{M}^{EG}}},{{\overset{\sim}{r}}_{b_{i}}^{IF} = {r_{b_{i}}^{IF} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{IF}}}}},{\forall{i \in {\mathcal{M}^{IF}.}}}$ and M^(BL), M^(EG), and M^(IF) denote index sets of building, electric-grid and building-grid interface constraints, respectively.
 3. The method of claim 2, further comprising: initializing a solution (X, y, Z) to an initial point (X⁰, y⁰, Z⁰) wherein X⁰

0, Z⁰

0; choosing a primal step length α_(p) and a dual step length α_(d) that satisfy X+α_(p)ΔX

0 and Z+α_(d)ΔZ

0; updating X←X+α_(p)ΔX and (y, Z)←α_(d)(Δy, ΔZ); and repeating the steps of choosing a search direction, choosing a primal step length and a dual step length, and updating a current iterate (X, y, Z) until the current iterate satisfies a stopping condition.
 4. The method of claim 2, further comprising enforcing linear independence constraint qualifications of the matrices A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(If).
 5. The method of claim 2, wherein exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) comprises: counting a number η_(i) ^(BL), η_(i) ^(BG), η_(i) ^(IF) of nonzero elements in A_(i) ^(BL), for all iεM^(BL), A_(i) ^(BG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), sorting the index sets M^(BL), M^(EG), M^(IF) in descending order in the numbers {η_(i) ^(BL)}, {η_(i) ^(BG)}, and {η_(i) ^(IF)} of nonzero elements in, respectively, A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), computing CPU times d_(1i) ^(BL)(î), d_(2i) ^(BL)(î), and d_(3i) ^(BL)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(BB) for all i,jεM^(BL), j≧i, wherein Ã_(ij) ^(BB)=WA_(i) ^(BL)W·A_(j) ^(BL),∀i,jεM^(BL), and ξ represents a permutation of the indices of the union of M^(BL), M^(EG), M^(IF); computing CPU times d_(1i) ^(BG)(î), d_(2i) ^(EG)(î), and d_(3i) ^(EG)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(EE), for all i,jεM^(EG), j≧i, wherein Ã_(ij)=WA_(i) ^(EG)W·A_(j) ^(EG), ∀i,jεM^(EG); computing CPU times d_(1i) ^(IG)(î), d_(2i) ^(IF)(î), and d_(3i) ^(IGF)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(II), for all i,jεM^(IF), j≧i, wherein Ã_(ij) ^(II)=WA_(i) ^(IF)W·A_(j) ^(IF), ∀i,jεM^(IF); and determining indices q₁ ^(BL), q₂ ^(BL)εM^(BL), q₁ ^(BL)≦q₂ ^(BL), q₁ ^(EG), q₂ ^(EG)εM^(EG), q₁ ^(EG)≦q₂ ^(EG), and q₁ ^(IF), q₂ ^(IF)εM^(IF), q₁ ^(IF)≦q₂ ^(IF) from conditions d _(1i) ^(BL)(ξ)≦d _(2i) ^(BL)(ξ),d _(1i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if 0<i≦q ₁ ^(BL), d _(2i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(2i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if q ₁ ^(BL) <i≦q ₂ ^(BL), d _(3i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(3i) ^(BL)(ξ)<d _(2i) ^(BL)(ξ) if q ₂ ^(BL) <i≦|M ^(BL)|, d _(1i) ^(EG)(ξ)≦d _(2i) ^(EG)(ξ),d _(1i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if 0<i≦q ₁ ^(EG), d _(2i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(2i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if q ₁ ^(EG) <i≦q ₂ ^(EG), d _(3i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(3i) ^(EG)(ξ)<d _(2i) ^(EG)(ξ) if q ₂ ^(EG) <i≦|M ^(EG)|, d _(1i) ^(IF)(ξ)≦d _(2i) ^(IF)(ξ),d _(1i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if 0<i≦q ₁ ^(IF), d _(2i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(2i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if q ₁ ^(IF) <i≦q ₂ ^(IF), d _(3i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(3i) ^(IF)(ξ)<d _(2i) ^(IF)(ξ) if q ₂ ^(IF) <i≦|M ^(IF)|.
 6. The method of claim 5, wherein ξ minimizes ${d_{*}(\xi)} = {{\sum\limits_{i \in \mathcal{M}^{BL}}\; {d_{*i}^{BL}(\xi)}} + {\sum\limits_{j \in \mathcal{M}^{EG}}\; {d_{*j}^{BL}(\xi)}} + {\sum\limits_{ \in \mathcal{M}^{IF}}\; {{d_{*}^{BL}(\xi)}.}}}$ for a permutation of a union of the index sets M^(BL), M^(EG), and M^(IF).
 7. The method of claim 5, wherein if 0<i≦q₁ ^(BL), further comprising computing Ã _(ξ(i)ξ(j)) ^(BB) =G ^(BL) ·A _(ξ(j)) ^(BL) ,∀i,jεM ^(BL) ,j≧i, Ã _(ξ(i)ξ(j)) ^(BE) =G ^(BL) ·A _(ξ(j)) ^(EG) ,∀iεM ^(BL) ,∀jεM ^(EG), Ã _(ξ(i)ξ(j)) ^(BI) =G ^(VL) ·A _(ξ(j)) ^(IF) ,∀iεM ^(BL) ,∀jεM ^(IF), if 0<i≦q₁ ^(BG), further comprising computing Ã _(ξ(i)ξ(j)) ^(EE) =G ^(EG) ·A _(ξ(i)) ^(EG) ,∀i,jεM ^(EG) ,j≧i, Ã _(ξ(i)ξ(j)) ^(EI) =G ^(EG) ·A _(ξ(j)) ^(IF) ,∀iεM ^(EG) ,∀jεM ^(IF), and if 0<i≦q₁ ^(IF), further comprising computing Ã _(ξ(i)ξ(j)) ^(II) =G ^(IF) ·A _(ξ(j)) ^(IF) ,∀iεM ^(IF) ,∀jεM ^(IF),j≧i.
 8. The method of claim 5, wherein if q₁ ^(BL)<i≦q₂ ^(BL), further comprising computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},$ if q₁ ^(EG)<i≦q₂ ^(EG) further comprising computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},$ and if q₁ ^(IF)<i≦q₂ ^(IF), further comprising computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{IF} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}$
 9. The method of claim 5, wherein if q₂ ^(BL)<i<M^(BL), further comprising computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},$ if q₂ ^(EG)<i<M^(EG), further comprising computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},$ and if q₂ ^(IF)<i<M^(IF), further comprising computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{IF} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}$
 10. A method for optimizing a cost of electric power generation in a smart site energy management model, comprising the steps of: choosing a search direction (ΔX, Δy, ΔZ) to minimize a semi-definite program given by C−Z−Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0 A ^(BL)(X)−b ^(BL)=0 A ^(EG)(X)−b ^(EG)=0 A ^(IF)(X)−b ^(IF)=0 XZ−μI=0 wherein C is a matrix formed of parameters of components of a building model and an electric grid model, X is a matrix formed of decision variables of the building model and electric grid model, A^(BL)(X), A^(EG)(X), and A^(IF)(X) are sparse matrices that represent constraints due to a building (BL) model, an electric grid (EG) model, and an building-grid interface model (IF), respectively, in a semi-definite programming format, b^(BL), b^(EG), and b^(IF) are constants derived from the constraints of the building model and electric grid model, Z=μX⁻¹, X

0, and Ã^(BL)(y^(BL)), Ã^(EG)(y^(EG)) and Ã^(IF)(y^(IF)) are transposes of A^(BL)(y^(BL)), A^(EG)(y^(EG)), and A^(IF)(y^(IF)) wherein y^(BL), y^(EQ), and y^(IF) are variables in a dual program of the primal semi-definite program, by solving ${{\overset{\sim}{A}\Delta \; y} = {- \overset{\sim}{r}}},{{\Delta \; Z} = {{- R_{C}} - {\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} - {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} - {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}}}},{{\Delta \; X} = {\left( {K - {W\; \Delta \; Z}} \right)W}},$ wherein $W = {{X^{\frac{1}{2}}\left( {X^{\frac{1}{2}}{ZX}^{\frac{1}{2}}} \right)}^{- \frac{1}{2}}X^{\frac{1}{2}}}$ is a positive semidefinite symmetric matrix of order n, and $K = {{\frac{\beta}{n}\left( {X \cdot Z} \right)I} - {XZ}}$ is an n×n real matrix that are determined by a current point (X, y, Z) for some βε(0,1), wherein ${\overset{\sim}{A} = \begin{bmatrix} {\overset{\sim}{A}}^{BB} & {\overset{\sim}{A}}^{BE} & {\overset{\sim}{A}}^{BI} \\ \left( {\overset{\sim}{A}}^{BE} \right)^{T} & {\overset{\sim}{A}}^{EE} & {\overset{\sim}{A}}^{EI} \\ \left( {\overset{\sim}{A}}^{BI} \right)^{T} & \left( {\overset{\sim}{A}}^{EI} \right)^{T} & {\overset{\sim}{A}}^{II} \end{bmatrix}},{{\overset{\sim}{r}}_{b} = {\begin{bmatrix} {\overset{\sim}{r}}_{b}^{BL} \\ {\overset{\sim}{r}}_{b}^{EG} \\ {\overset{\sim}{r}}_{b}^{IF} \end{bmatrix}.}},{{\overset{\sim}{A}}_{ij}^{BB} = {{WA}_{i}^{BL}{W \cdot A_{j}^{BL}}}},{\forall i},{j \in \mathcal{M}^{BL}},{{\overset{\sim}{A}}_{ij}^{BE} = {{WA}_{i}^{BL}{W \cdot A_{j}^{EG}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{ij}^{BI} = {{WA}_{i}^{BL}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{EE} = {{WA}_{i}^{EG}{W \cdot A_{j}^{EG}}}},{\forall i},{j \in \mathcal{M}^{EG}},{{\overset{\sim}{A}}_{ij}^{EI} = {{WA}_{i}^{EG}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{II} = {{WA}_{i}^{IF}{W \cdot A_{j}^{IF}}}},{\forall i},{j \in \mathcal{M}^{IF}},{{\overset{\sim}{r}}_{b_{i}}^{BL} = {r_{b_{i}}^{BL} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{BL}}}}},{\forall{i \in \mathcal{M}^{BL}}},{{\overset{\sim}{r}}_{b_{i}}^{EG} = {r_{b_{i}}^{EG} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{EG}}}}},{\forall{i \in \mathcal{M}^{EG}}},{{\overset{\sim}{r}}_{b_{i}}^{IF} = {r_{b_{i}}^{IF} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{IF}}}}},{\forall{i \in {\mathcal{M}^{IF}.}}}$ and M^(BL), M^(EG), and M^(IF) denote index sets of building, electric-grid and building-grid interface constraints, respectively; and exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) in determining said search direction.
 11. The method of claim 10, wherein said semi-definite program is derived by imposing optimality conditions on a primal semi-definite program C·X−μln(det(X)) subject to constraints A ^(BL)(X)=b ^(BL), A ^(EG)(X)=b ^(EG), A ^(IF)(X)=b ^(IF), X

0, which is minimized for positive real values of μ as μ approaches zero.
 12. A non-transitory program storage device readable by a computer, tangibly embodying a program of instructions executed by the computer to perform the method steps for optimizing a cost of electric power generation in a smart site energy management model, the method comprising the steps of: determining a matrix X that minimizes a semidefinite program C·X−μln(det(X)) subject to constraints A ^(BL)(X)=b ^(BL), A ^(EG)(X)=b ^(EG), A ^(IF)(X)=b ^(IF), X

0 for positive real values of μ as μ approaches zero, wherein C·X is a cost function that models a smart building-grid energy system of a plurality of buildings on a site interconnected with electric power grid energy resources wherein C is a matrix formed of parameters of components of a building model and an electric grid model, X is a matrix formed of decision variables of the building model and electric grid model, A^(BL)(X), A^(EG)(X), and A^(IF)(X) are sparse matrices that represent constraints due to a building (BL) model, an electric grid (EG) model, and an building-grid interface model (IF), respectively, in a semi-definite programming format, b^(BL), b^(EG), and b^(IF) are constants derived from the constraints of the building model and electric grid model; and exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) in determining a search direction for determining the vector X.
 13. The computer readable program storage device of claim 12, wherein solving the primal semi-definite program comprises: imposing optimality conditions on the primal semi-definite program to derive C−Z−Ã ^(BL)(y ^(BL))−Ã ^(EG)(y ^(EG))−Ã ^(IF)(y ^(IF))=0, A ^(BL)(X)−b ^(BL)=0 A ^(EG)(X)−b ^(EG)=0 A ^(IF)(X)−b ^(IF)=0, XZ−μI=0 wherein Z=μX⁻¹, X

0, and Ã^(BL)(y^(BL)) Ã^(EG)(y^(EG)) and Ã^(IF)(y^(IF)) are transposes of A^(BL)(y^(BL)), A^(EG)(y^(EG)), and A^(IF)(y^(IF)) wherein y^(BL), y^(EQ), and y^(IF) are variables in a dual program of the primal semi-definite program; and choosing a search direction (ΔX, Δy, ΔZ) by solving ${{\overset{\sim}{A}\Delta \; y} = {- \overset{\sim}{r}}},{{\Delta \; Z} = {{- R_{C}} - {\sum\limits_{i \in \mathcal{M}_{b}}\; {A_{bi}^{BL}\Delta \; y_{i}^{BL}}} - {\sum\limits_{i \in \mathcal{M}_{e}}\; {A_{i}^{EG}\Delta \; y_{i}^{EG}}} - {\sum\limits_{i \in \mathcal{M}_{i}}\; {A_{i}^{IF}\Delta \; y_{i}^{IF}}}}},{{\Delta \; X} = {\left( {K - {W\; \Delta \; Z}} \right)W}},$ wherein $W = {{X^{\frac{1}{2}}\left( {X^{\frac{1}{2}}{ZX}^{\frac{1}{2}}} \right)}^{- \frac{1}{2}}X^{\frac{1}{2}}}$ is a positive semidefinite symmetric matrix of order n, and $K = {{\frac{\beta}{n}\left( {X \cdot Z} \right)I} - {XZ}}$ is an n×n real matrix that are determined by a current point (X, y, Z) for some βε(0,1), wherein ${\overset{\sim}{A} = \begin{bmatrix} {\overset{\sim}{A}}^{BB} & {\overset{\sim}{A}}^{BE} & {\overset{\sim}{A}}^{BI} \\ \left( {\overset{\sim}{A}}^{BE} \right)^{T} & {\overset{\sim}{A}}^{EE} & {\overset{\sim}{A}}^{EI} \\ \left( {\overset{\sim}{A}}^{BI} \right)^{T} & \left( {\overset{\sim}{A}}^{EI} \right)^{T} & {\overset{\sim}{A}}^{II} \end{bmatrix}},{{\overset{\sim}{r}}_{b} = {\begin{bmatrix} {\overset{\sim}{r}}_{b}^{BL} \\ {\overset{\sim}{r}}_{b}^{EG} \\ {\overset{\sim}{r}}_{b}^{IF} \end{bmatrix}.}},{{\overset{\sim}{A}}_{ij}^{BB} = {{WA}_{i}^{BL}{W \cdot A_{j}^{BL}}}},{\forall i},{j \in \mathcal{M}^{BL}},{{\overset{\sim}{A}}_{ij}^{BE} = {{WA}_{i}^{BL}{W \cdot A_{j}^{EG}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{ij}^{BI} = {{WA}_{i}^{BL}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{EE} = {{WA}_{i}^{EG}{W \cdot A_{j}^{EG}}}},{\forall i},{j \in \mathcal{M}^{EG}},{{\overset{\sim}{A}}_{ij}^{EI} = {{WA}_{i}^{EG}{W \cdot A_{j}^{IF}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},{{\overset{\sim}{A}}_{ij}^{II} = {{WA}_{i}^{IF}{W \cdot A_{j}^{IF}}}},{\forall i},{j \in \mathcal{M}^{IF}},{{\overset{\sim}{r}}_{b_{i}}^{BL} = {r_{b_{i}}^{BL} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{BL}}}}},{\forall{i \in \mathcal{M}^{BL}}},{{\overset{\sim}{r}}_{b_{i}}^{EG} = {r_{b_{i}}^{EG} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{EG}}}}},{\forall{i \in \mathcal{M}^{EG}}},{{\overset{\sim}{r}}_{b_{i}}^{IF} = {r_{b_{i}}^{IF} + {\left( {K + {WR}_{C}} \right){W \cdot A_{i}^{IF}}}}},{\forall{i \in {\mathcal{M}^{IF}.}}}$ and M^(BL), M^(EG), and M^(IF) denote index sets of building, electric-grid and building-grid interface constraints, respectively.
 14. The computer readable program storage device of claim 13, the method further comprising: initializing a solution (X, y, Z) to an initial point (X⁰, y⁰, Z⁰) wherein X⁰

0, Z⁰

0; choosing a primal step length α_(p) and a dual step length α_(d) that satisfy X+α_(p)ΔX

0 and Z+α_(d)ΔZ

0; updating X←X+α_(p)ΔX and (y, Z)←α_(d)(Δy, ΔZ); and repeating the steps of choosing a search direction, choosing a primal step length and a dual step length, and updating a current iterate (X, y, Z) until the current iterate satisfies a stopping condition.
 15. The computer readable program storage device of claim 13, the method further comprising enforcing linear independence constraint qualifications of the matrices A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF).
 16. The computer readable program storage device of claim 13, wherein exploiting the sparsity of matrices A^(BL)(X), A^(EG)(X), and A^(IF)(X) comprises: counting a number η_(i) ^(BL), η_(i) ^(EG), η_(i) ^(IF) of nonzero elements in A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), sorting the index sets M^(BL), M^(EG), M^(IF) in descending order in the numbers {η_(i) ^(BL)}, {η_(i) ^(EG)}, and {η_(i) ^(IF)} of nonzero elements in, respectively, A_(i) ^(BL), for all iεM^(BL), A_(i) ^(EG), for all iεM^(EG), and A_(i) ^(IF), for all iεM^(IF), computing CPU times d_(1i) ^(BL)(î), d_(2i) ^(BL)(î), and d_(3i) ^(BL)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(BB) for all i,jεM^(BL), j≧i, wherein Ã_(ij) ^(BB)=WA_(i) ^(BL)W·A_(j) ^(BL), ∀i,jεM^(BL), and ξ represents a permutation of the indices of the union of M^(BL), M^(EG), M^(IF); computing CPU times d_(1i) ^(EG)(î), d_(2i) ^(EG)(î), and d_(3i) ^(EG)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(EE), for all i,jεM^(EG), j≧i, wherein Ã_(ij) ^(EE)=WA_(i) ^(EG)W·A_(j) ^(EG), ∀i,jεM^(EG); computing CPU times d_(1f) ^(IF)(î), d_(2i) ^(IF)(î), and d_(3i) ^(IGF)(î) needed to compute Ã_(ξ(i)ξ(j)) ^(II), for all i,jεM^(IF), j≧i, wherein Ã_(ij) ^(II)=WA_(i) ^(IF)W·A_(j) ^(IF), ∀i,jεM^(IF); and determining indices q₁ ^(BL), q₂ ^(BL)εM^(BL), q₁ ^(BL)≦q₂ ^(BL), q₁ ^(EG), q₂ ^(BG)εM^(EG),q₁ ^(EG)≦q₂ ^(EG), and q₁ ^(IF), q₂ ^(IF)εM^(IF),q₁ ^(IF)≦q₂ ^(IF) from conditions d _(1i) ^(BL)(ξ)≦d _(2i) ^(BL)(ξ),d _(1i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if 0<i≦q ₁ ^(BL), d _(2i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(2i) ^(BL)(ξ)≦d _(3i) ^(BL)(ξ) if q ₁ ^(BL) <i≦q ₂ ^(BL), d _(3i) ^(BL)(ξ)<d _(1i) ^(BL)(ξ),d _(3i) ^(BL)(ξ)<d _(2i) ^(BL)(ξ) if q ₂ ^(BL) <i≦|M ^(BL)|, d _(1i) ^(EG)(ξ)≦d _(2i) ^(EG)(ξ),d _(1i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if 0<i≦q ₁ ^(EG), d _(2i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(2i) ^(EG)(ξ)≦d _(3i) ^(EG)(ξ) if q ₁ ^(EG) <i≦q ₂ ^(EG), d _(3i) ^(EG)(ξ)<d _(1i) ^(EG)(ξ),d _(3i) ^(EG)(ξ)<d _(2i) ^(EG)(ξ) if q ₂ ^(EG) <i≦|M ^(EG)|, d _(1i) ^(IF)(ξ)≦d _(2i) ^(IF)(ξ),d _(1i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if 0<i≦q ₁ ^(IF), d _(2i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(2i) ^(IF)(ξ)≦d _(3i) ^(IF)(ξ) if q ₁ ^(IF) <i≦q ₂ ^(IF), d _(3i) ^(IF)(ξ)<d _(1i) ^(IF)(ξ),d _(3i) ^(IF)(ξ)<d _(2i) ^(IF)(ξ) if q ₂ ^(IF) <i≦|M ^(IF)|,
 17. The computer readable program storage device of claim 16, wherein ξ minimizes ${d_{*}(\xi)} = {{\sum\limits_{i \in \mathcal{M}^{BL}}\; {d_{*i}^{BL}(\xi)}} + {\sum\limits_{j \in \mathcal{M}^{EG}}\; {d_{*j}^{BL}(\xi)}} + {\sum\limits_{ \in \mathcal{M}^{IF}}\; {{d_{*}^{BL}(\xi)}.}}}$ for a permutation of a union of the index sets M^(BL), M^(EG), and M^(IF).
 18. The computer readable program storage device of claim 16, wherein if 0<i≦q_(i) ^(BL), the method further comprises computing Ã _(ξ(i)ξ(j)) ^(BB) =G ^(BL) ·A _(ξ(j)) ^(BL) ,∀i,jεM ^(BL) ,j≧i, Ã _(ξ(i)ξ(j)) ^(BE) =G ^(BL) ·A _(ξv(j)) ^(EG) ,∀iεM ^(BL) ,∀jεM ^(EG), Ã _(ξ(i)ξ(j)) ^(BI) =G ^(VL) ·A _(ξ(j)) ^(IF) ,∀iεM ^(BL) ,∀jεM ^(IF), if 0<i≦q₁ ^(EG), the method further comprises computing Ã _(ξ(i)ξ(j)) ^(EE) =G ^(EG) ·A _(ξ(i)) ^(EG) ,∀i,jεM ^(EG) ,j≧i, Ã _(ξ(i)ξ(j)) ^(EI) =G ^(EG) ·A _(ξ(j)) ^(IF) ,∀iεM ^(EG) ,∀jεM ^(IF), and if 0<i≦q_(i) ^(IF), the method further comprises computing Ã _(ξ(i)ξ(j)) ^(II) =G ^(IF) ·A _(ξ(j)) ^(IF) ,∀iεM ^(IF) ,∀jεM ^(IF),j≧i.
 19. The computer readable program storage device of claim 16, wherein if q₁ ^(BL)<i≦q₂ ^(BL), the method further comprises computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{BL} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},$ if q₁ ^(BG)<i≦q₁ ^(EG), the method further comprises computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{EG} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},$ and if q₁ ^(IF)<i≦q₂ ^(IF), the method further comprises computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\alpha \in }\; {\sum\limits_{\beta \in }\; {\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack_{\alpha\beta}\left( {\sum\limits_{\gamma \in }\; {W_{\alpha\gamma}\left\lbrack F_{i}^{IF} \right\rbrack}_{\gamma\beta}} \right)}}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}$
 20. The computer readable program storage device of claim 16, wherein if q₁ ^(BL)<i<M^(BL), the method further comprises computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BB} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{BL} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{BL}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{EG}}},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{BI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{BL} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{BL}}},{\forall{j \in \mathcal{M}^{IF}}},$ if q₂ ^(EG)<i<M^(EG), the method further comprises computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EE} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{EG} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{EG}},{j \geq i},{{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{EI} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{EG} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall{i \in \mathcal{M}^{EG}}},{\forall{j \in \mathcal{M}^{IF}}},$ and if q₂ ^(IF)<i<M^(IF), the method further comprises computing ${{\overset{\sim}{A}}_{{\xi {(i)}}{\xi {(j)}}}^{II} = {\sum\limits_{\gamma,{\varepsilon \in }}\; {\left( {\sum\limits_{\alpha,{\beta \in }}\; {\left\lbrack A_{\xi {(i)}}^{IF} \right\rbrack_{\alpha\beta}W_{\alpha\gamma}W_{\beta\varepsilon}}} \right)\left\lbrack A_{\xi {(j)}}^{IF} \right\rbrack}_{\gamma\varepsilon}}},{\forall i},{j \in \mathcal{M}^{IF}},{j \geq {i.}}$ 